For Each...Next, instruction
Répète un groupe d’instructions pour chaque élément dans une matrice ou une collection.
Syntaxe
For Each, élémentdans legroupe
[ statements ]
[ Exit For ]
[ statements ]
Next [ element ]
La syntaxe de l’instruction For...Each...Next comprend les éléments suivants :
Élément | Description |
---|---|
element | Requis. Variable utilisée pour itérer les éléments de la collection ou de la matrice. Pour les collections, l’élément ne peut être qu’une variable Variant , une variable objet générique ou une variable objet spécifique. Pour les matrices, élément ne peut être qu’une variable Variant. |
groupe | Obligatoire. Nom d’une collection ou d’une matrice d’objets (à l’exception d’une matrice detypes définis par l’utilisateur). |
statements | Optional. Une ou plusieurs instructions exécutées sur chaque élément dans group. |
Remarques
Le bloc For…Each est entré s’il existe au moins un élément dans group. Une fois la boucle entrée, toutes les instructions de la boucle sont exécutées pour le premier élément du groupe. S’il y a d’autres éléments dans group, les instructions de la boucle continuent de s’exécuter pour chaque élément. Lorsqu’il n’y a plus d’élément dans group, la boucle est terminée et l’exécution continue avec l’instruction qui suit l’instruction Next.
N’importe quel nombre d’instructions Exit For peuvent être placées n’importe où dans la boucle comme alternative pour quitter. Exit For est souvent utilisée après l'évaluation d'une certaine condition, par exemple If…Then, et elle transfère le contrôle à l'instruction qui suit immédiatement Next.
Vous pouvez imbriquer des boucles For...Each...Next en plaçant une boucle For…Each…Next dans une autre. Cependant, chaque boucle element doit être unique.
Remarque
Si vous omettez element dans une instruction Next, l’exécution continue comme si element était inclus. Si une instruction Next est rencontrée avant son instruction For correspondante, une erreur se produit.
Vous ne pouvez pas utiliser l’instruction For...Each...Next avec une matrice de types définis par l’utilisateur car un Variant ne peut pas contenir de type défini par l’utilisateur.
Exemple
Cet exemple utilise l’instruction For Each...Next pour effectuer une recherche dans la propriété Text de tous les éléments d’une collection afin de vérifier l’existence de la chaîne « Hello ». Dans l’exemple, MyObject est un objet texte et un élément de la collection MyCollection. Tous deux sont des noms génériques utilisés uniquement à des fins d'illustration.
Dim Found, MyObject, MyCollection
Found = False ' Initialize variable.
For Each MyObject In MyCollection ' Iterate through each element.
If MyObject.Text = "Hello" Then ' If Text equals "Hello".
Found = True ' Set Found to True.
Exit For ' Exit loop.
End If
Next
Voir aussi
- Utilisation d’instructions Pour Chaque... Instructions Suivantes
- For...Next, instruction
- Types de données
- Statements
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.