Opcja VBA Wyraźna

DeklarowanieOpcja Wyraźna u góry modułu kodu mówi VBA, aby wymagał zadeklarowania wszystkich zmiennych, których używasz w kodzie. Jeśli to polecenie zostanie pominięte, możesz użyć zmiennych, których nie zadeklarowałeś. Zalecamy użycie Option Explicit w górnej części modułu, ponieważ pomaga to uniknąć błędnego wpisywania zmiennych.

Używanie zmiennych VBA bez opcji jawnej

Najpierw pokażemy przykład kodu, gdy nie ma polecenia Option Explicit. Oto kod:

123456789 Private Sub ExampleWOOptionExplicit()Dim strTextA As StringstrTextA = "Testowanie VBA bez jawnej opcji"MsgBox strTextANapis końcowy

W tym przykładzie zadeklarowaliśmy zmienną strTextA w pierwszym wierszu procedury i przypisaliśmy jej tekst. Następnie chcemy zwrócić okno wiadomości o wartości strTekstA. Oto wynik po uruchomieniu kodu:

Obraz 1. Kod bez opcji Explicit

Jak widać na obrazku 1, kod został pomyślnie wykonany. Okno komunikatu z wartością od strTekstA pojawiła się, mimo że nie zadeklarowaliśmy zmiennej strTekstA. Tutaj nie ma problemu z kodem, ale co by było, gdybyśmy błędnie napisali nazwę zmiennej:

1 MsgBox strTxtA

Tutaj napisaliśmy strTxtA (bez „e”) zamiast strTextA. W rezultacie otrzymujemy puste okno komunikatu, ponieważ zmienna strTxtA nie została zdefiniowana. Teraz zobaczymy, jak używać Option Explicit, aby zapobiec błędom.

Używanie zmiennych z Option Explicit

Jeśli chcesz uniemożliwić korzystanie ze zmiennych, które nie są zadeklarowane, musisz wpisaćOpcja Wyraźna u góry Twojego modułu:

1 Opcja Wyraźna

Oto kompletny kod, łącznie z literówką:

12345678910 Opcja WyraźnaPrivate Sub ExampleWithOptionExplicit()Dim strTextA As StringstrTextA = "Testowanie VBA bez jawnej opcji"MsgBox strTxtANapis końcowy

Zobaczmy, co się stanie, jeśli uruchomimy kod:

Obraz 2. Kod z Option Explicit

W rezultacie otrzymujemy błąd „Zmienna niezdefiniowana”, ponieważ nie zadeklarowaliśmystrTxtA zmienny.

Dodanie Option Explicit w górnej części modułów kodu pomaga zapobiegać błędom z błędnie napisanych zmiennych.

Jeśli chcesz dowiedzieć się więcej o VBA innych opcjach VBA, dowiedz się, jak ustawić VBA bez uwzględniania wielkości liter: Zapobiegaj uwzględnianiu wielkości liter w VBA

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

wave wave wave wave wave