Ve VBA můžete ukončit For Loop pomocí Ukončit pro příkaz.
1 | Ukončit pro |
Když dojde k provedení kódu Ukončit pro, opustí smyčku For a bude pokračovat prvním řádkem za smyčkou.
Pokud se chcete dozvědět, jak ukončit smyčku Do, klikněte na tento odkaz: VBA Exit Loop
Ukončení smyčky, pokud je splněna podmínka
Na příkladu uvidíte, jak opustit smyčku For, když je splněna určitá podmínka. Smyčkujeme a zvyšujeme hodnotu proměnné i o 1 v každé iteraci. Pokud jde o 5, chceme opustit smyčku a vrátit okno se zprávou. Zde je kód:
123456789 | Dim i As IntegerPro i = 1 až 10Pokud i = 5 PakUkončit proKonec IfPříště jáMsgBox "Hodnota je" & i |
Nejprve zadáme For Loop, pokud je hodnota i menší než 10:
123 | Pro i = 1 až 10Příště já |
Poté zkontrolujeme, zda je hodnota i rovna 5, pomocí příkazu If. Pokud je hodnota 5, ukončíme smyčku For a přejdeme na první řádek za smyčkou:
12345 | Pokud i = 5 PakUkončit proKonec If |
Pokud podmínka není splněna, následující příkaz zvýší i o 1 a znovu vstoupí do smyčky For:
1 | Příště já |
První řádek kódu, který bude spuštěn po ukončení smyčky For, je okno se zprávou s hodnotou i:
1 | MsgBox "Hodnota je" & i |
Pokud tento kód spustíte v režimu ladění, uvidíte, že projde smyčkou 5krát. V 5th iterace, hodnota proměnné i se stane 5 a kód vstoupí do těla If. Nyní je tělo smyčky For ukončeno. Poté se zobrazí vyskakovací okna MsgBox s hodnotou i:
Obrázek 1. Příklad Exit For Loop