On Error – sposób na błędy w VBA

Błędy w VBA po uruchomieniu kompilatora

Specjalna obsługa błędów uruchamiana przy pomocy polecenia On Error pozwala świadomie kontrolować błędy występujące podczas pracy kompilatora. Polecenie to wstawiaj przed linijką kodu, która może wywołać błąd, jeśli warunki nie będą pozwalały na jego wykonanie. Na przykładzie programu powodującego przejście do kolejnego arkusza pokażę Ci w jaki sposób działa polecenie On Error.

On Error Resume Next

On Error Resume Next to polecenie, które powoduje ignorowanie wszystkich błędów występujących po tej linijce kodu. Jeśli użyjesz go w swoim makrze, możesz wykorzystać obiekt Err, który przyjmuje wartość odpowiadającą występującemu błędowi.

On Error GoTo NazwaEtykiety

On Error GoTo NazwaEtykiety to metoda, która sprawia, że w przypadku wystąpienia błędu kompilator przechodzi do wykonywania przygotowanej etykiety. Ten kawałek programu powinien być poprzedzony poleceniem Exit Sub. Jeśli go zabraknie, to nawet pomimo braku błędu, etykieta i tak się wykona.

On Error GoTo 0

On Error GoTo 0 jest poleceniem powodującym powrót do standardowej obsługi błędów, które będą przerywały pracę kompilatora.

Polecenie Resume

Kiedy stosujesz etykietę możesz dopisać w niej na końcu polecenie Resume, które spowoduje powrót kompilatora do miejsca, w którym wywołany został błąd i użycie tej linijki kodu jeszcze raz. Poniżej przykład zdarzenia zapisującego plik przed zamknięciem we wskazanej lokalizacji.

Kiedy kompilator wygeneruje błąd spowodowany brakiem folderu Nowy, uruchomiona zostanie etykieta tworząca nowy folder, po czym ponownie zostanie uruchomiona linijka zapisująca plik we wskazanej lokalizacji.

Spodobał Ci się artykuł ? Udostępnij go znajomym.

Share on facebook
Share on linkedin
Share on twitter

Leave a Comment

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *