Wiederholt eine Gruppe von Anweisungen für jedes Element in einem Array oder einer Collection.
Syntax
For Each element In group [statements] [Exit For] [statements] Next
Argumente:
element: Variable zur Iteration durch die Elemente der Collection oder des Arrays. Bei Collections kann "element" nur eine Variable Variant-Variable, eine generische Object-Variable oder eine spezifische Automation Object-Variable sein. Bei Arrays kann "element" nur eine Variant-Variable sein.
group: Der Name einer Collection oder eines Arrays mit Objekten.
statements: Eine oder mehrere Anweisungen, die für jedes Element in der Gruppe ausgeführt werden.
Anmerkungen
Der For Each-Block wird verarbeitet, wenn die Gruppe mindestens ein Element enthält. Sobald die Verarbeitung der Schleife beginnt, werden alle Anweisungen in der Schleife für das erste Element der Gruppe ausgeführt. Wenn die Gruppe weitere Elemente enthält, werden die Anweisungen in der Schleife fortgesetzt und für jedes Element ausgeführt. Wenn die Gruppe keine weiteren Elemente enthält, wird die Schleife beendet und die Ausführung mit der Anweisung fortgesetzt, die auf die Next-Anweisung folgt.
Die Exit For-Kontrollstruktur kann nur in einer For Each...Next- oder For...Next-Kontrollstruktur verwendet werden, um eine alternative Möglichkeit zum Beenden bereitzustellen. Eine beliebige Anzahl von Exit For-Anweisungen kann überall in der Schleife platziert werden. Exit For wird häufig bei der Auswertung einer Bedingung (z.B. If...Then) verwendet und übergibt die Kontrolle an die Anweisung, die direkt auf Next folgt.
Sie können For Each...Next-Schleifen verschachteln, indem Sie eine For Each...Next-Schleife in eine andere einfügen. Jedes Schleifenelement muss jedoch eindeutig sein.
Note:
Wenn Sie ein Element in einer Next-Anweisung weglassen, wird die Ausführung fortgesetzt, als hätten Sie es angegeben. Wenn eine Next-Anweisung vor der zugehörigen For-Anweisung gefunden wird, tritt ein Fehler auf.
Das folgende Beispiel veranschaulicht die Verwendung der For Each...Next-Anweisung:
Beispiel 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