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 :

explication code VBA [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    361
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 361
    Par défaut explication code VBA
    bonjour,
    je cherche à comprendre ces lignes de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     With Fe
        ' On supprime les lignes sans données dans la liste
        For j = .ListObjects(1).ListRows.Count To 1 Step -1
          If Application.CountA(.ListObjects(1).ListRows(j).Range) = 0 Then
            .ListObjects(1).ListRows(j).Delete
          End If
        Next j
    ListObjects(1).ListRows(j) représente-t-il une plage de donnée?

    quelqu'un pourrait il m'expliquer brièvement ligne par ligne ce que fait le code svp?

    Mercii

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Fe.ListObjects(1).ListRows.Count indique le nombre de lignes de ton tableau.
    Fe.ListObjects(1).ListRows(j).Range représente la plage de la ligne j de ton tableau.
    Application.CountA(.ListObjects(1).ListRows(j).Range) indique le nombre de cellules non vides de cette plage.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    With Fe
        'On boucle de la derniere ligne du tableau jusqu'à la première
        For j = .ListObjects(1).ListRows.Count To 1 Step -1
            'Si aucune cellule de la ligne n'est renseignée.
            If Application.CountA(.ListObjects(1).ListRows(j).Range) = 0 Then
                'On supprime cette ligne sans donnée du tableau.
                .ListObjects(1).ListRows(j).Delete
            End If
        Next j
    Cordialement.

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    361
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 361
    Par défaut
    Merci !
    c'était tout ce que je voulais

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

Discussions similaires

  1. Explication code VBA sur menu clic droit.
    Par Doutrick dans le forum IHM
    Réponses: 1
    Dernier message: 14/04/2013, 20h13
  2. [Toutes versions] Explications code VBA
    Par alexvol dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/11/2012, 04h03
  3. Explication code VBA svp
    Par Guns Of The Patriots dans le forum VBA Access
    Réponses: 6
    Dernier message: 10/06/2008, 12h33
  4. explication code vba
    Par akmer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/04/2008, 09h01
  5. explication code vba
    Par akmer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/04/2008, 11h12

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