VBA przy błędzie Wyjdź Sub

W VBA możesz zaprogramować swój kod tak, aby wyszedł z Sub za każdym razem, gdy wystąpi błąd. Aby to zrobić, użyj W przypadku błędu Przejdź do oraz Wyjście Sub.

On Error Goto informuje VBA, że w przypadku napotkania błędu „Przejdź do” określonej sekcji kodu. Były:

1 W przypadku błędu Przejdź do obsługi błędów

Z poziomu tej sekcji możesz następnie powiedzieć VBA, aby wyszedł z Sub, aby wyjść z procedury podrzędnej:

12 Obsługa błędów:Wyjście Sub

Czytaj dalej, aby zobaczyć te wiersze kodu w akcji…

Wyjdź z Sub na błąd w VBA

W tym przykładzie wygenerujemy błąd dzieląc przez zero:

1 ja = 5 / 0

Zobacz pełny kod poniżej. Kiedy VBA odczyta błąd, „przejdzie” do sekcji ErrorHandler kodu i wyjdzie:

123456789101112131415 Błąd podtestu ()Dim i jako liczba całkowitaW przypadku błędu Przejdź do obsługi błędówja = 5 / 0„Zrób coś z iMsgBox iWyjście SubObsługa błędów:MsgBox "Jeśli błąd, wyjdź z Sub"Wyjście SubNapis końcowy

Aby określić obsługę błędów, musisz najpierw zadeklarować W przypadku błędu Przejdź do oświadczenie. Należy to zadeklarować na początku Subskrypcji:

1 W przypadku błędu Przejdź do obsługi błędów

Następnie musisz zadeklarować kod obsługi błędów. Zwykle znajduje się na końcu kodu:

123 Obsługa błędów:MsgBox "Jeśli błąd, wyjdź z Sub"Wyjście Sub

Dodajemy „Exit Sub” nad ErrorHandler, ponieważ chcemy uruchomić kod ErrorHandler tylko wtedy, gdy wystąpi błąd.

12345 Wyjście SubObsługa błędów:MsgBox "Jeśli błąd, wyjdź z Sub"Wyjście SubNapis końcowy

Jeśli uruchomisz Sub, dojdzie do błędu z powodu dzielenia przez zero. W tym momencie zostanie wykonany kod obsługi błędów. Pojawi się okno komunikatu i Sub zostanie opuszczony.

Obraz 1. VBA przy błędzie Wyjdź Sub

Jeśli chcesz dowiedzieć się, jak zakończyć wykonywanie kodu w VBA, kliknij ten link: Koniec VBA

Jeśli chcesz dowiedzieć się, jak wyjść z podrzędnej lub funkcji, kliknij ten link: VBA Wyjdź z podrzędnej lub funkcji

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave