Ve VBA můžete svůj kód naprogramovat tak, aby opustil Sub, kdykoli dojde k chybě. Chcete -li to provést, použijte Při chybě GoTo a Ukončit dílčí.
Při chybě Přejít, řekne VBA, že když dojde k chybě „Přejít na“ konkrétní část vašeho kódu. Příklad:
1 | Při chybě GoTo ErrorHandler |
V této sekci pak můžete říct VBA, aby ukončil Sub, aby ukončil dílčí postup:
12 | ErrorHandler:Ukončit dílčí |
Pokračujte v čtení, abyste viděli tyto řádky kódu v akci …
Ukončete dílčí dílčí chybu při VBA
V tomto případě vygenerujeme chybu vydělením nulou:
1 | i = 5/0 |
Podívejte se na celý kód níže. Když VBA přečte chybu, „přejde“ do části ErrorHandler kódu a ukončí:
123456789101112131415 | Dílčí testovací chyba ()Dim i As IntegerPři chybě GoTo ErrorHandleri = 5/0„Udělej něco se mnouMsgBox iUkončit dílčíErrorHandler:MsgBox "Pokud dojde k chybě, ukončete dílčí"Ukončit dílčíEnd Sub |
Chcete -li zadat zpracování chyb, musíte nejprve deklarovat Při chybě GoTo tvrzení. Mělo by být deklarováno na začátku Sub:
1 | Při chybě GoTo ErrorHandler |
Poté musíte deklarovat kód pro zpracování chyb. Obvykle je na konci kódu:
123 | ErrorHandler:MsgBox "Pokud dojde k chybě, ukončete dílčí"Ukončit dílčí |
Přidáme „Exit Sub“ nad ErrorHandler, protože kód ErrorHandler chceme spustit pouze v případě chyby.
12345 | Ukončit dílčíErrorHandler:MsgBox "Pokud dojde k chybě, ukončete dílčí"Ukončit dílčíEnd Sub |
Pokud spustíte Sub, dojde k chybě z důvodu dělení nulou. V tom okamžiku bude spuštěn kód pro zpracování chyb. Zobrazí se okno se zprávou a Sub je ukončen.
Obrázek 1. VBA On Error Exit Sub
Pokud se chcete dozvědět, jak ukončit provádění kódu ve VBA, klikněte na tento odkaz: Konec VBA
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