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 :

détail code vba


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 64
    Par défaut détail code vba
    Bonjour,
    Je souhaiterai qu'on m'explique(comme à un enfant de 6ans,lol) et me permettre de mieux comprendre les code vba suivant et savoir si vous pouviez m'expliquer ce que l'ordinateur comprend lui, car j'ai beaucoup de mal à comprendre la logique des formules alors que ces dernières son justes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     Public Sub AfficherData()
    ' Afficher les données }
    Dim LigF1 As Long }
    Dim LigF2 As Long } J'ai compris
    Dim derLig As Long }
    Dim LigDebGroup As Long }
    Dim DataGroup As String }
    Dim Plage As Range } 
     
    ' Dans Feuil1
    Sheets("feuil1").Select } J'ai compris
     
    ' Récupération de la dernière ligne remplie en colonne A (j'ai compris)
    derLig = Range("A65535").End(xlUp).Row 
    If derLig < 7 Then Exit Sub
     
    DataGroup = "" ( pourquoi rien?)
    LigF2 = 5
    ligDeb = LigF2 (pourquoi créer une variable ligDeb étant donné qu'elle est tjr égale à LigF2??)
     
    Après je ne comprend quaziment plus rien :-)
    ' Boucle de la ligne 7 à la dernière
    For LigF1 = 7 To derLig
    ' Si changement de groupe par rapport à la colonne N
    ' alors saut d'une ligne pour affichage du groupe suivant
    If DataGroup <> Range("N" & LigF1).Value Then
    ' Ligne vide entre chaque groupe
    If LigF1 > 7 Then
    LigF2 = IIf(LigF2 < ligDeb + 4, LigF2 + 2, LigF2 + 1)
    ligDeb = LigF2
    End If
     
    ' Afficher l'en-tête du groupe
    Call AfficherGroupe(LigF1, LigF2)
    LigF2 = LigF2 + 2
    End If
     
    ' Afficher les détails du groupe
    Call AfficherDetailGroupe(LigF1, LigF2)
    LigF2 = LigF2 + 1
     
    ' Valeur du groupe
    DataGroup = Range("N" & LigF1).Value
    Next LigF1
    Merci d'avance et je suis vraiment très reconnaissant de l'aide qu'apporte tous les participant de ce forum

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour Akmer,

    Affichez Visual Basic, placez le curseur dans la procédure et appuyez sur "F8".

    Vous pouvez suivre les valeurs que prennent les variables et vous pourrez vous rendre compte par exemple que ligDeb prend des valeurs différentes que DataGroup = "" est l'initialisation de la variable avec une valeur Nulle à la quelle une valeur sera affectée ensuite en fonction des comparaisons faites avec d'autres variables.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 64
    Par défaut
    la touche F8 ne fait que defillé les diverses écriture de code.
    Etant débutant en vba je n'est pas compris un mot de votre deuxième paragraphe, pour vous c'est logique mais pour moi débutant j'ai rien compris.
    Merci comme même

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re Akmer,

    Ne le prenez pas mal. Si je vous ai répondu de cette façon c'est parce que j'ai constaté que vous aviez déjà posé des questions concernant d'autres lignes de code et en fonction du nombre de lignes de code de votre ou de vos procédure(s), j'ai pensé que la meilleure solution était que vous puissiez suivre vous-même le cheminement de ce code.

    Vous avez écrit :

    la touche F8 ne fait que defillé les diverses écriture de code.
    En fait elle ne sert pas qu'à faire défiler les instructions en pas-à-pas. Si vous amenez le curseur sur une variable dans la ligne qui vient d'être traitée vous pouvez visualiser la valeur affectée à la variable.

    Vous pouvez aussi afficher la "Fenêtre variables locales".

    Etant débutant en vba je n'est pas compris un mot de votre deuxième paragraphe, pour vous c'est logique mais pour moi débutant j'ai rien compris.
    Cela me paraît pourtant clair si on prend la peine de lire la suite du code.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 64
    Par défaut
    merci pour votre aide, j'ai vraiment beaucoup de problème avec la programmation que je veux faire et n'ayant pas beaucoup de notion j'ai du mal comprendre.
    Merci encore

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

Discussions similaires

  1. afficher un graphique dans word à partir de mon code vba
    Par guysocode dans le forum VBA Word
    Réponses: 2
    Dernier message: 07/11/2005, 14h15
  2. Réponses: 2
    Dernier message: 27/10/2005, 15h51
  3. Réponses: 4
    Dernier message: 13/10/2005, 14h44
  4. Réponses: 3
    Dernier message: 06/09/2005, 10h27
  5. Comment creer une procédure stockée à partir d'un code VBA?
    Par Alcor020980 dans le forum Connexion aux bases de données
    Réponses: 4
    Dernier message: 24/05/2005, 19h55

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