Répète un groupe d'instructions pour chaque élément d'un tableau ou d'une collection.
Syntaxe
For Each element In group [statements] [Exit For] [statements] Next
Arguments :
element : variable utilisée pour parcourir les éléments de la collection ou du tableau. Pour les collections, element ne peut être qu'une variable de variante, une variable d'objet générique ou toute variable d'objet d'automatisation spécifique. Pour les tableaux, element ne peut être qu'une variable de variante.
group : nom d'un tableau ou d'une collection d'objets.
statements : instructions qui sont exécutées sur chaque élément du groupe.
Remarques
Le bloc For Each est exécuté s'il existe au moins un élément dans le groupe. Une fois la boucle démarrée, toutes les instructions qu'elle contient sont exécutées pour le premier élément du groupe. S'il existe d'autres éléments dans le groupe, les instructions de la boucle continuent à être exécutées pour chacun d'entre eux. Une fois que tous les éléments du groupe ont été traités, la boucle se ferme et l'exécution se poursuit avec l'instruction qui suit l'instruction Next.
L'instruction Exit For ne peut être utilisée que dans une structure de contrôle For Each...Next ou For...Next afin de fournir une autre méthode pour sortir de la boucle. Vous pouvez placer un nombre illimité d'instructions Exit For n'importe où dans la boucle. L'instruction Exit For est souvent utilisée avec l'évaluation d'une condition (par exemple, If...Then) et transfère le contrôle à l'instruction qui suit immédiatement l'instruction Next.
Vous pouvez imbriquer des boucles For Each...Next en plaçant une boucle For Each...Next dans une autre. Cependant, chaque élément de boucle doit être unique.
Note:
Si vous omettez element dans une instruction Next, l'exécution continue comme si vous l'aviez inclus. Si une instruction Next est rencontrée avant l'instruction For correspondante, une erreur survient.
L'exemple suivant illustre l'utilisation de l'instruction For Each...Next :
Exemple 1 :
Dim fruits(2)
fruits(0) = "Apple"
fruits(1) = "Banana"
fruits(2) = "Cherry"
For Each fruit In fruits
' Variable fruit denotes each element in fruits array
Next