For Each...Next, instruction

Répète un groupe d'instructions pour chaque élément d'un tableau ou d'une collection.

For Each element In group
   [statements]
   [Exit For]
   [statements]
Next [element]

Arguments

element

Variable employée pour effectuer une itération sur les éléments de la collection ou du tableau. Pour les collections, l'argument element peut uniquement être une variable de type Variant, une variable de type Object générique, ou n'importe quelle variable d'objet Automation spécifique. Pour les tableaux, l'argument element peut être uniquement une variable de type Variant.

group

Nom d'une collection d'objets ou d'un tableau.

statements

Une ou plusieurs instructions pouvant être exécutées sur chaque élément d'un groupe indiqué par group.

Notes

Le bloc d'instruction For Each peut être tapé si l'entité group comporte au moins un élément. Une fois la boucle, toutes les instructions de celle-ci sont exécutées pour le premier élément de l'entité group. Puis, tant qu'il reste des éléments dans l'entité group, les instructions de la boucle continuent à s'exécuter pour chaque élément. Lorsqu'il n'y a plus d'éléments dans l'entité group, le programme sort de la boucle et exécute l'instruction se trouvant immédiatement après l'instruction Next.

L'instruction Exit For ne peut être utilisée qu'à l'intérieur d'une structure de contrôle For Each...Next ou For...Next pour fournir un autre mode de sortie. La boucle peut inclure un nombre illimité d'instructions Exit For. L'instruction Exit For est souvent employée avec l'évaluation d'une condition (par exemple, If...Then), et transfère le contrôle à l'instruction se trouvant immédiatement après Next.

Vous pouvez imbriquer des boucles For Each...Next en plaçant une boucle For Each...Next à l'intérieur d'une autre. Cependant, chaque element de boucle doit être unique.

Remarque   Si vous omettez l'argument element dans une instruction Next, l'exécution se poursuit comme si vous l'aviez incluse. Si une instruction Next est rencontrée avant son instruction For correspondante, une erreur se produit.

L'exemple ci-dessous illustre l'utilisation de l'instruction For Each...Next :

Function ShowFolderList(folderspec)
   Dim fso, f, f1, fc, s
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.GetFolder(folderspec)
   Set fc = f.Files
   For Each f1 in fc
      s = s & f1.name 
      s = s & "<BR>"
   Next
   ShowFolderList = s
End Function

Version requise

Version 2

Voir aussi

Do...Loop, instruction | Exit, instruction | For...Next, instruction | While...Wend, instruction