Explications Procédure ?

atlonia

XLDnaute Occasionnel
Bonjour tout le monde,

Hier soir j'ai découvert les "Wiki Pages de MichelXld", C'est un outil formidable pour apprendre.

J'essaie d'apprendre à lire le VBA en me faisant des tutos ou j'explique les lignes de code, mais ce n'est pas encore évident pour moi...!

Je sollicite votre aide pour m'aider à compléter Ces lignes, et à corriger mes commentaires qui vous paraissent inexactes.

Merci de votre aide

Ci joint mon fichier
 

Pièces jointes

  • exemples_vba_feuilles_perso.xls
    30.5 KB · Affichages: 61

wilfried_42

XLDnaute Barbatruc
Re : Explications Procédure ?

bonjour

Il y a quelques traductions qui demande des precisions, mais elle ne sont pas fausse (du moins totalement)

Tu bloques sur l'instruction CASE, c'est une instruction de type conditionnelle : IF THEN ELSE

Exemple simple : une variable entiere peut prendre x valeurs, mais seules les valeur de 1 à 5 te sont utiles

au lieu de faire :
Code:
If a = 1 then 
 ........
 ........
end if
If a = 2 then 
 ........
 ........
end if
If a = 3 then 
 ........
 ........
end if
If a = 4 then 
 ........
 ........
end if
If a = 5 then 
 ........
 ........
end if
if I<1 or i>5 then msgbox "Erreur"

tu fais :
Code:
select case a
      case 1
            ..........
            ..........
      case 2
            ..........
            ..........
      case 3
            ..........
            ..........
      case 4
            ..........
            ..........
      case 5
            ..........
            ..........
      case else
            msgbox "Erreur"
end select

ca donne la meme chose, mais c'est plus clair, plus propre et plus facile à lire, de plus si tu ajoutes un critere, c'est plus simple d'ajouter case 6 par exemple

en esperant avoir ete clair (à mon tour) :rolleyes:
 

skoobi

XLDnaute Barbatruc
Re : Explications Procédure ?

Bonjour,

pour compléter tes commentaires:

For Each Ch In Charts 'Pour chaque feuille dans la collection feuille graphique
If Ch.Name = Sheets(i).Name Then Cible = True 'Cible = vraie si le nom du graphique = nom de la feuille

L'instruction "Case" permet d'exécuter différentes actions en
fonction du résultat renvoyé par la variable ???
Oui, c'est ça.
Si tu veux en savoir plus sur une fonction, propriété etc ... clique dessus puis ouvre l'aide en appuyant sur F1.

Edit: collision, salut Wilfried :)
 

atlonia

XLDnaute Occasionnel
Re : Explications Procédure ?

Bonjour Wilfried 42 et Skoobi,

Merci pour votre aide si précieuse,

Je comprenais en gros ce que faisait chaque ligne, mais n'étais pas capable de l'expliquer clairement.

C'est beaucoup plus clair maintenant!

Skoobi, Je connais effectivement la touche "F1", mais je l'avais complètement zappé. Merci de me la rappeler

Wilfried, quand tu parle de "Vbcrlf", tu fait référence à la ligne: typeFeuilles = typeFeuilles & vbLf, n'est-ce pas ?
 

atlonia

XLDnaute Occasionnel
Re : Explications Procédure ?

J'essaie d'en lire un autre,

mais je bute sur les nombres inscrits dans la boucle:

Sub lettresnumeroColonne()
Dim boucle As Integer, valeur As Integer, Z As Integer
boucle = activeCell.Column
If boucle <= 26 Then
msgbox Chr(Boucle + 64)
Else
Valeur = application.rounddown(Boucle / 26, 0)
If Valeur = Boucle / 26 Then Valeur = Valeur - 1
Z = (Boucle - (26 * Valeur)) + 64
msgbox Chr(Valeur + 64) & Chr(Z)

End If
End Sub

Je ne comprend pas à quoi ils se référent; 26, 64?

Merci
 
Dernière édition:

Statistiques des forums

Discussions
312 330
Messages
2 087 351
Membres
103 526
dernier inscrit
HEC