Помилка компіляції VBA

У цьому посібнику буде пояснено, що означає помилка компіляції VBA та як вона виникає.

Перш ніж запускати код, редактор VBA збирає код. Це в основному означає, що VBA перевіряє ваш код, щоб переконатися, що всі вимоги є для його коректного запуску - він перевірить, чи всі змінні оголошені (якщо ви використовуєте Option Explicit, який вам слід!), Перевірте, чи всі процедури оголошені , перевірити цикли та оператори if тощо. Компілюючи код, VBA допомагає мінімізувати будь -які помилки під час виконання.

(Докладніше про помилки VBA див. У нашому Посібнику з обробки помилок)

Незадекларовані змінні

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

Якщо натиснути OK, відповідна процедура перейде в режим налагодження.

Крім того, перед тим, як запустити код, ви можете примусити компіляцію коду.

В Меню, виберіть Налагодження> Скомпілювати проект.

Компілятор знайде будь -які помилки компіляції і відповідно виділить першу, яку знайде.

Незадекларовані процедури

Якщо ви кодуєте посилання на процедуру, яка не існує, ви також отримаєте помилку компіляції.

Наприклад:

1234 Sub CallProcedure ()"Тоді тут є деякий кодЗателефонуйте NextProcedureEnd Sub

Однак, якщо процедура - ДаліПроцедура не існує, то виникне помилка компіляції.

Неправильне кодування - очікуваний кінець оператора

Якщо ви створюєте цикл за допомогою Для… Кожного… Далі або З… Закінчити з і забути про те і Далі або Закінчити з… Ви також отримаєте помилку компіляції.

123456 Sub CompileError ()Dim wb Як робочий зошитЗатемнити як робочий аркушДля кожного ws В wbMsgBox ws.NameEnd Sub

Те саме станеться з оператором If, якщо опущено End If!

Відсутні посилання

Якщо ви використовуєте бібліотеку об’єктів, яка не є частиною Excel, але ви використовуєте об’єкти з бібліотеки у вашому оголошенні змінної, ви також отримаєте помилку компіляції.

Це можна вирішити за допомогою пізнього прив’язки - оголошення змінних об’єктами; або шляхом додавання відповідного Бібліотека об’єктів до Проекту.

В Меню, виберіть Інструменти> Посилання та додайте до свого проекту відповідну бібліотеку об’єктів.

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

wave wave wave wave wave