VBA Boucle à Travers un Tableau et ses Éléments
In this Article
Ce tutoriel vous apprendra à boucler à travers des tableaux en VBA.
Il existe deux façons principales de boucler dans des tableaux en utilisant VBA :
- Boucle For Each – La boucle For Each parcourt chaque élément du tableau.
- Boucle For Next – La boucle For Next parcourt les positions de début et de fin spécifiées du tableau (nous pouvons utiliser les fonctions UBound et LBound pour parcourir tout le tableau).
Boucle « For Each » pour Parcourir les Éléments du Tableau
La Boucle For Each vous permet d’exécuter une itération de la boucle pour chaque élément du tableau.
Sub BoucleForEachTableauStatique()
'Déclaration d'un tableau de type Variant
Dim strNoms(1 To 4) As String
'Popule les valeurs du tableau
strNoms(1) = "Bob"
strNoms(2) = "Peter"
strNoms(3) = "Keith"
strNoms(4) = "Sam"
'Déclaration d'une variable de type variant pour
'contenir les éléments du tableau
Dim item As Variant
'Boucle à travers le tableau (une itération par élément)
For Each item In strNoms
'Affiche l'élément dans la fenêtre d'exécution
Debug.Print item
Next item
End Sub
La procédure ci-dessus permet de parcourir en boucle tous les noms du tableau.
Boucle « For Next »
La boucle For Next parcourt chaque élément à partir d’une position de début jusqu’à une position de fin spécifiée du tableau.
Boucle à Travers une Partie du Tableau
Vous pouvez spécifier manuellement les positions de début et de fin de votre boucle. Cela peut s’avérer utile si vous connaissez la taille de votre tableau et/ou si vous souhaitez uniquement parcourir une partie du tableau.
Sub BoucleForNextTableauStatique()
'Déclaration d'un tableau de type Variant
Dim strNoms(1 To 4) As String
'Popule les valeurs du tableau
strNoms(1) = "Bob"
strNoms(2) = "Peter"
strNoms(3) = "Keith"
strNoms(4) = "Sam"
'Déclaration d'une variable de type Nombre Entier
Dim i As Integer
'Boucle à partir de la position 2 jusqu'à la position 3 du tableau
For i = 2 To 3
'Affiche le nom de l'élément correspodant dans le fenêtre d'exécution
Debug.Print strNoms(i)
Next i
End Sub
Dans l’exemple ci-dessus, nous avons parcouru en boucle les positions 2 et 3 du tableau. La fenêtre immédiate affiche les noms comme suit.
Boucle à Travers un Tableau Entier
Ensuite, nous allons utiliser les fonctions UBound et LBound pour parcourir en boucle un tableau entier. Ces fonctions sont extrêmement utiles si les positions de début et de fin du tableau sont susceptibles de changer (par exemple, dans le cas d’un tableau dynamique) :
Sub BoucleForNextDynamique()
'Déclaration d'un tableau de type Variant
Dim strNoms() As String
' Initialisation du tableau
ReDim strNoms(1 To 4)
'Popule les valeurs du tableau
strNoms(1) = "Bob"
strNoms(2) = "Peter"
strNoms(3) = "Keith"
strNoms(4) = "Sam"
'Déclaration d'une variable de type Nombre Entier
Dim i As Integer
'Boucle à partir de la position de départ jusqu'à la position finale du tableau
For i = LBound(strNoms) To UBound(strNoms)
'Affiche le nom de l'élément correspodant dans le fenêtre d'exécution
Debug.Print strNoms(i)
Next i
End Sub
VBA Coding Made Easy
Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!Learn More!