Ve VBA ukončíte VŠECHNY provádění kódu pomocí Konec příkaz.
1 | Konec |
Když dojde k provedení kódu Konec, okamžitě dokončí provádění a opustí program.
Pokud se chcete dozvědět, jak ukončit Sub při chybě, klikněte na tento odkaz: VBA On Error Exit Sub
Pokud se chcete dozvědět, jak ukončit dílčí funkci nebo funkci, klikněte na tento odkaz: VBA Ukončit dílčí funkci nebo funkci
Ukončete veškerý kód ve VBA
Na příkladu uvidíte, co se stane, když použijeme Konec příkaz ve VBA. Vytvořili jsme Sub EndSub, který má Konec povel uvnitř. Tento Sub je volán z CallEndSub. Zde je kód:
123456789101112131415161718 | Soukromý Sub EndSub ()Dim i As IntegerPro i = 1 až 10Pokud i = 5 PakMsgBox „Hodnota i je“ & iKonecKonec IfPříště jáEnd SubPrivate Sub CallEndSub ()Volejte EndSubMsgBox „End Sub“End Sub |
V EndSub, 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, vrátíme okno se zprávou s hodnotou i a použijeme příkaz Konec.
1234567 | Pokud i = 5 PakMsgBox „Hodnota i je“ & iKonecKonec 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á |
V CallEndSub, nejprve zavoláme Sub EndSub:
1 | Volejte EndSub |
Poté vrátíme pole Zpráva:
1 | MsgBox „End Sub“ |
Pokud spustíte CallEndSub, nejprve zavolá EndSub. 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í MsgBox „Hodnota i je“ & i je vykonán a Konec potom:
Obrázek 1. Konec VBA
Jak vidíte, provádění kódu se zastaví hned po Konec příkaz, takže MsgBox „End Sub“ není nikdy vykonán.