In VBA kun je een For Loop afsluiten met de Afsluiten voor opdracht.
1 | Afsluiten voor |
Wanneer de uitvoering van de code komt tot: Afsluiten voor, zal het een For-lus verlaten en verder gaan met de eerste regel na de lus.
Als je wilt leren hoe je een Do-lus kunt verlaten, klik dan op deze link: VBA Exit Loop
Een For-lus verlaten wanneer aan een voorwaarde is voldaan
In het voorbeeld ziet u hoe u een For-lus kunt verlaten wanneer aan een bepaalde voorwaarde is voldaan. We zullen de waarde van de variabele i in elke iteratie met 1 herhalen en verhogen. Als het op 5 aankomt, willen we de lus verlaten en een berichtvenster retourneren. Hier is de code:
123456789 | Dim ik als geheel getalVoor i = 1 tot 10Als ik = 5 DanAfsluiten voorStop alsvolgende iMsgBox "De waarde is " & i |
Eerst voeren we de For Loop in als de waarde van i kleiner is dan 10:
123 | Voor i = 1 tot 10volgende i |
Daarna controleren we met het If-commando of de waarde van i gelijk is aan 5. Als de waarde 5 is, verlaten we de For-lus en gaan we naar de eerste regel na de lus:
12345 | Als ik = 5 DanAfsluiten voorStop als |
Als niet aan de voorwaarde wordt voldaan, wordt i met 1 verhoogd en wordt de For-lus opnieuw ingevoerd:
1 | volgende i |
De eerste regel van de code die wordt uitgevoerd na het verlaten van de For-lus is het berichtvenster met de waarde van i:
1 | MsgBox "De waarde is " & i |
Als je deze code in de debug-modus uitvoert, zul je zien dat deze 5 keer door de lus gaat. in de 5e iteratie, wordt de waarde van de variabele i 5 en komt de code in de If-body. Nu wordt de body van de For-lus verlaten. Daarna verschijnen de MsgBox-pop-ups met de waarde van i:
Afbeelding 1. Exit For Loop voorbeeld