IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Alerte si nombre de lignes atteint


Sujet :

Macros et VBA Excel

  1. #1
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Points : 984
    Points
    984
    Par défaut Alerte si nombre de lignes atteint
    Bonjour,

    Dans une feuille Excel (L20388) j'ai un tableau comportant 28 lignes. Lorsque je clique sur un numéro se trouvant en colonne A alors une autre feuille s'ouvre (FL20388) et m'affiche un autre tableau.
    Par exemple je clique sur le n°1 de L20388 alors le tableau n°1 de FL20388 s'affiche, je clique sur 2, tableau 2, etc...
    Il y a donc 28 tableaux affichables chacun ayant 30 lignes.

    Ce que je cherche à faire, c'est que lorsque les 30 lignes sont remplies, il puisse y avoir un message qui s'affiche lors du double-clic dans le tableau de la feuille L20388.

    Est-ce réalisable et comment ?

    Merci par avance pour l'aide que vous pourrez m'apporter

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Bonjour René,

    S'il s'agit de tableau au sens Excel 2007 avec le tableau initial commençant en ligne 2, le nom des tableaux de la seconde feuille étant "Tableau n" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
        Cancel = True
        If Target.Row - 1 = 1 Then
            If Sheets("FL20388").ListObjects("Tableau " & Target.Row - 1).ListRows.Count = 30 Then
                MsgBox "Message"
            End If
        End If
    End Sub

  3. #3
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Points : 984
    Points
    984
    Par défaut
    Bonjour Daniel,

    Le code ne fait pas ce que je recherche. J'ai du mal m'expliquer.
    Dans une feuille de calcul (F20388 par exemple), l'utilisateur a la possibilité d'ouvrir 28 autres tableaux se trouvant dans une autre et même feuille (FL20388).
    Si l'utilisateur clique sur le n°1 alors le tableau 1 s'affiche (lignes A1 à A41) les autres lignes étant cachées.
    Si l'utilisateur clique sur le n°2 alors le tableau 2 s'affiche (lignes A42 à A82) les autres lignes étant cachées; ainsi de suite jusqu'au 28ème tableau (lignes A1108 à A1147).

    Le but est de limiter la saisie dans chacun des tableaux à 29 lignes (pas 30 comme je l'ai dis).

    Donc si la cellule A36 est saisie (dernière cellule du 1er tableau) alors message informant de passer à un autre tableau.
    Donc si le cellule A77 est saisie (dernière cellule du 2ème tableau) alors message informant de passer à un autre tableau.

    Ainsi de suite....

    Désolé pour le premier message qui n'était pas très clair.

    Bien cordialement
    René

  4. #4
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Bonjour,

    Le plus simple serait de mettre un classeur exemple, ne serait-ce que pour faire la distinction entre plage et tableau. Aussi, est-ce que tu sélectionnes une cellule tu tableau affiché ?

  5. #5
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Points : 984
    Points
    984
    Par défaut
    Si la cellule A8 (1ère cellule où la saisie est possible dans le tableau 1) est saisie alors on passe à la cellule A9, et ainsi de suite jusqu'à la cellule A36 (dernière cellule où la saisie est possible dans le tableau 1)

    Je vais essayer de mettre un fichier exemple, il faut que je modifie mon fichier original car il est très gros.


    Voici le fichier en pièce jointe (limité à 10 tableaux)
    Fichiers attachés Fichiers attachés

  6. #6
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Bonjour, bonjour !

    Pour limiter la saisie dans une feuille de calculs, ne pas oublier sa propriété ScrollArea !

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  7. #7
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Si la cellule A8 (1ère cellule où la saisie est possible dans le tableau 1) est saisie alors on passe à la cellule A9, et ainsi de suite jusqu'à la cellule A36 (dernière cellule où la saisie est possible dans le tableau 1)
    Ca n'a pas l'air de" correspondre à ton classeur :
    - 1ère cellule : B12
    - dernière cellule : B39
    (la colonne A est déjà remplie.)

  8. #8
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Points : 984
    Points
    984
    Par défaut
    Il faut double-cliquer sur la cellule A12 de la feuille L836.

    Donc en cliquant sur cette cellule, une autre feuille s'ouvre avec le n° du tableau choisi (il y 28 tableaux dans la feuille FL836).

  9. #9
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Bonjour,

    Peut-être en modifiant cette partie du code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            FNew.Rows("1:1185").Hidden = True
                FNew.Range(FNew.Cells((Target.Value - 1) * 41 + 2, 3), FNew.Cells((Target.Value - 1) * 41 + 1 + 38, 3)).EntireRow.Hidden = False
                    FNew.Cells((Target.Value - 1) * 41 + 2, 3).Select
                    If FNew.Cells((Target.Value - 1) * 41 + 2, 1).Offset(34).Value <> "" Then
                        MsgBox "tableau plein"
                        Exit Sub
                    End If
                    Application.Goto FNew.Cells((Target.Value - 1) * 41 + 2, 3), True
    Fin:

  10. #10
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Points : 984
    Points
    984
    Par défaut
    Bonjour Daniel,

    C'est génial, ça fonctionne bien. Encore mille mercis pour ta précieuse aide.
    Bien cordialement
    René

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Limiter le nombre de Ligne d'un RichEdit
    Par Argonz dans le forum C++Builder
    Réponses: 2
    Dernier message: 06/07/2004, 10h16
  2. [SYBASE] nombre de ligne impactée par UPDATE
    Par metheorn dans le forum Sybase
    Réponses: 3
    Dernier message: 14/05/2004, 16h47
  3. determination le nombre de ligne d'une table
    Par picoti2 dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/03/2004, 09h25
  4. Réponses: 2
    Dernier message: 02/03/2004, 19h38
  5. [TListView] Compter le nombre de lignes
    Par agh dans le forum Composants VCL
    Réponses: 2
    Dernier message: 30/09/2002, 20h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo