Овај водич ће објаснити шта значи грешка компајлирања ВБА и како се јавља.
Пре покретања кода, ВБА Едитор саставља код. То у основи значи да ВБА испитује ваш код како би се уверио да постоје сви захтеви за његово исправно покретање - провериће да ли су све променљиве декларисане (ако користите Оптион Екплицит коју бисте требали!), Проверите да ли су све процедуре декларисане , проверава петље и иф наредбе итд. Компилацијом кода, ВБА помаже у смањењу било каквих грешака у току извршавања.
(За више информација о ВБА грешкама погледајте наш Водич за руковање грешкама)
Непријављене променљиве
Ако не декларишете променљиве, али је ваша Оптион Екплицит укључена на врху вашег модула, а затим покренете макро, доћи ће до грешке при компајлирању.
Ако притиснете У реду, релевантна процедура ће прећи у режим отклањања грешака.
Алтернативно, пре него што покренете код, можете форсирати компилацију кода.
У Мени, изаберите Дебуг> Цомпиле Пројецт.
Преводилац ће пронаћи све грешке при превођењу и према томе означити прву коју пронађе.
Непријављене процедуре
Ако се код односи на процедуру која не постоји, такође ћете добити грешку при компајлирању.
На пример:
1234 | Суб ЦаллПроцедуре ()'Онда имамо овде неки кодПозовите НектПроцедуреЕнд Суб |
Међутим, ако је поступак - НектПроцедуре не постоји, онда ће доћи до грешке при компајлирању.
Нетачно кодирање - Очекивани крај извода
Ако креирате петљу користећи За… Сваки… Следећи или Са… Заврши са и заборави да и Следећи или Завршити… такође ћете добити грешку при компајлирању.
123456 | Суб ЦомпилеЕррор ()Дим вб Као радна свескаДим вс Ас ВорксхеетЗа сваки вс У вбМсгБок вс.НамеЕнд Суб |
Исто ће се догодити са наредбом Иф ако се изостави крај Иф!
Недостају референце
Ако користите библиотеку објеката која није део програма Екцел, али користите објекте из библиотеке у декларацији променљиве, такође ћете примити грешку при компајлирању.
Ово се може решити било касним везивањем - проглашавањем променљивих Објекти; или додавањем релевантних Библиотека објеката до Пројекта.
У Мени, изаберите Алатке> Референце и додајте одговарајућу библиотеку објеката у свој пројекат.