Явний варіант VBA

ДекларуванняОпція явна у верхній частині кодового модуля повідомляє VBA вимагати від вас оголосити всі змінні, які ви використовуєте в коді. Якщо ця команда опущена, ви можете використовувати змінні, які ви не оголосили. Ми рекомендуємо використовувати Option Explicit у верхній частині вашого модуля, оскільки це допомагає уникнути помилкового введення змінних.

Використання змінних VBA без опції Explicit

Спочатку ми покажемо приклад коду, коли немає команди Option Explicit. Ось код:

123456789 Приклад приватного підрозділу WOOptionExplicit ()Затемнити strTextA як рядокstrTextA = "Тестування VBA без явного варіанту"MsgBox strTextAEnd Sub

У прикладі ми оголосили змінну strTextA у першому рядку процедури та призначили їй текст. Після цього ми хочемо повернути вікно повідомлення зі значенням strTextA. Ось результат, коли ми запускаємо код:

Зображення 1. Код без опції Explicit

Як ви можете бачити на зображенні 1, код успішно виконано. Вікно повідомлення зі значенням від strTextA з'явилося, навіть якщо ми не оголосили змінну strTextA. Тут немає проблем з кодом, але що, якби ми помилково написали назву змінної:

1 MsgBox strTxtA

Тут ми написали strTxtA (без "e") замість strTextA. В результаті ми отримуємо порожнє вікно повідомлення, оскільки змінна strTxtA не була визначена. Тепер ми побачимо, як використовувати Option Explicit для запобігання помилкам.

Використання змінних з опцією Explicit

Якщо ви хочете запобігти використанню змінних, які не оголошені, вам потрібно ввестиОпція явна у верхній частині модуля:

1 Опція явна

Ось повний код, включаючи помилку:

12345678910 Опція явнаПриватний підприкладWithOptionExplicit ()Затемнити strTextA як рядокstrTextA = "Тестування VBA без явного варіанту"MsgBox strTxtAEnd Sub

Давайте подивимося, що станеться, якщо ми запустимо код:

Зображення 2. Код з опцією Explicit

В результаті ми отримуємо помилку "Змінна не визначена", оскільки ми не оголошувалиstrTxtA змінна.

Додавання опції Explicit у верхній частині модулів коду допомагає запобігти помилкам з помилково написаними змінами.

Якщо ви хочете дізнатися більше про інші варіанти VBA, дізнайтеся про те, як зробити VBA чутливим до регістру: Запобігайте VBA чутливому до регістру

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave