Якщо ви збираєтеся витрачати час на роботу з макросами в редакторі Visual Basic, чому б не скористатися кількома вбудованими інструментами, які полегшать вашу роботу? Ці поради значно покращать ваш досвід програмування макросами.
Застосування блокових коментарів
Розміщення одного апострофа перед будь-яким рядком коду повідомляє Excel пропустити цей рядок коду. Ця техніка називається коментуванням коду. Більшість програмістів використовують один апостроф для створення коментарів або приміток у коді, як показано тут.
Один апостроф перед будь-яким рядком перетворює цей рядок на коментар.
Іноді корисно прокоментувати кілька рядків коду. Таким чином, ви можете перевірити певні рядки коду, вказуючи Excel ігнорувати прокоментовані рядки.
Замість того, щоб витрачати час на коментування по одному рядку, ви можете використовувати панель інструментів «Редагувати», щоб прокоментувати весь блок коду.
Щоб активувати панель інструментів «Редагувати», перейдіть до меню VBE і виберіть «Перегляд»→ «Панелі інструментів» → «Редагувати». Виберіть рядки коду, які потрібно прокоментувати, а потім натисніть значок «Блок коментарів» на панелі інструментів «Редагувати», як показано тут.
Використовуйте панель інструментів «Редагувати», щоб застосувати коментарі до блоку коду.
Копіювання кількох рядків коду
Ви можете скопіювати цілі блоки коду, виділивши потрібні рядки, а потім утримуючи клавішу Ctrl, перетягуючи блок. Цей старий трюк Windows працює, навіть коли ви перетягуєте модулі.
Ви дізнаєтеся, що перетягуєте копію, коли курсор покаже символ плюса поруч із нею, як показано тут.
Ctrl, перетягніть, щоб створити копію.
Перемикання між модулями та процедурами
Після того, як ваш кеш коду макросу почне збільшуватися, швидко переміщатися між модулями та процедурами може бути важко. Ви можете полегшити біль за допомогою кількох гарячих клавіш.
-
Натисніть Ctrl+Tab, щоб швидко переміщатися між модулями.
-
Натисніть Ctrl+Page Up і Ctrl+Page Down, щоб переміщатися між процедурами в межах модуля.
Телепортація до ваших функцій
Переглядаючи макрос, ви можете зіткнутися зі змінною або назвою функції, яка, очевидно, вказує на якийсь інший фрагмент коду. Замість того, щоб переглядати всі модулі, щоб знайти, звідки походить назва функції чи змінної, ви можете просто поставити курсор на назву функції чи змінної та натиснути Shift+F2.
Як ілюструє цей малюнок, ви миттєво телепортуєтеся до походження цієї функції або імені змінної. Натискання Ctrl+Shift+F2 поверне вас туди, з чого ви починали.
Натисніть Shift+F2 на назві функції або змінної, щоб перейти до неї.
Дотримання правильної процедури
Коли ваші модулі містять кілька процедур, прокрутка окремої процедури без ненавмисного переходу до іншої може бути складною. Ви часто будете прокручувати вгору, а потім вниз, намагаючись повернутися до правильного фрагмента коду.
Щоб уникнути цієї нісенітниці, натисніть кнопку «Перегляд процедур» у нижньому лівому куті VBE, як показано тут. Це обмежує прокручування лише процедурою, у якій ви перебуваєте.
Обмежте прокручування активною процедурою.
Перегляд коду
Щоб переглянути код, вам потрібно перевести макрос у режим налагодження. Просто помістіть курсор у будь-яке місце макросу, а потім натисніть клавішу F8.
У програмуванні термін налагодження означає пошук і виправлення можливих помилок у коді. Одним із корисніших інструментів налагодження є можливість покрокового проходження коду по одному рядку за раз. Коли ви перебираєте код, ви спостерігаєте, як виконується кожен рядок.
Перший рядок коду буде виділено, а на лівому полі вікна коду з’явиться маленька стрілка, як показано тут. Натисніть F8 ще раз, щоб виконати виділений рядок коду та перейти до наступного рядка. Продовжуйте натискати F8, щоб спостерігати за виконанням кожного рядка до кінця макросу.
Натисніть F8, щоб переглянути кожен рядок макросу.
Щоб вийти з режиму налагодження, перейдіть до меню VBE і виберіть Налагодження→ Вийти.
Перехід до певного рядка коду
Що робити, якщо ви хочете почати перегляд коду з певного рядка? Що ж, ви можете зробити це, просто переміщаючи стрілку!
Коли рядок коду виділено в режимі налагодження, ви можете клацнути та перетягнути стрілку на лівому полю вікна коду вгору або вниз, опустивши її на будь-який рядок коду, який потрібно виконати наступним, як показано тут.
Перетягуйте стрілку, перебираючи код.
Зупинка коду у заздалегідь визначеній точці
Коли ви встановите точку зупину, ваш код буде виконуватися як звичайний, а потім зупиниться на рядку коду, який ви визначили як точку зупину.
Ця техніка налагодження стане в нагоді, якщо ви хочете запустити тестування невеликих блоків коду за раз. Наприклад, якщо ви підозрюєте, що у вашому макросі може бути помилка, але ви знаєте, що більшість макросів виконується без проблем, ви можете встановити точку зупину, починаючи з підозрілого рядка коду, а потім запустити макрос. Коли макрос досягає точки зупинки, виконання припиняється. На цьому етапі ви можете натиснути клавішу F8 на клавіатурі, щоб спостерігати, як макрос виконує один рядок за раз.
Щоб встановити точку зупину у своєму коді, помістіть курсор там, де ви хочете, щоб точка зупину починалася, а потім натисніть клавішу F9 на клавіатурі. VBA чітко позначить точку зупину точкою на лівому полі вікна коду, а сам рядок коду буде затінений темно-бордовим.
Точка зупину позначається крапкою і затіненим текстом.
Коли ваш макрос досягає точки зупинки, він буде переведено в режим налагодження. Щоб вийти з режиму налагодження, ви можете піднятися до меню VBE і вибрати Налагодження → Вийти.
Перегляд значень змінних початку та кінця
Якщо ви наведете курсор на змінну String або Integer у VBA в режимі налагодження, ви зможете побачити значення цієї змінної у підказці. Ця функція дозволяє вам бачити значення, які передаються в змінні та з них, що корисно під час налагодження коду.
Однак підказки можуть містити лише 77 символів (включаючи назву змінної), тому, якщо значення у вашій змінній занадто довге, воно обрізається. Щоб побачити більше, ніж перші 77 символів, просто утримуйте клавішу Ctrl під час наведення.
Ось як виглядає підказка під час наведення курсора на змінну в режимі налагодження.
Початковий і кінцевий символи у підказці змінної.
Вимкнення автоматичної перевірки синтаксису
Часто, працюючи над деяким кодом, ви помітите, що вам потрібно перейти до іншого рядка, щоб щось скопіювати. Ви не закінчили з рядком; вам просто потрібно залишити це на секунду. Але VBE миттєво зупиняє вас із повідомленням про помилку, подібним до показаного тут, попереджаючи про те, що ви вже знаєте.
Незавершений рядок коду призводить до різкого повідомлення про помилку.
Ці вікна повідомлень змушують вас припинити те, що ви робите, щоб підтвердити помилку, натиснувши кнопку OK. Після півдня цих різких повідомлень ви будете готові кинути комп’ютер об стіну.
Що ж, ви можете зберегти свій комп’ютер і розсудливість, вимкнувши автоматичну перевірку синтаксису. Перейдіть до меню VBE та виберіть Інструменти→Параметри. З’явиться діалогове вікно «Параметри» з вкладкою «Редактор». Зніміть прапорець параметра Автоперевірка синтаксису, щоб зупинити ці дратівливі повідомлення про помилки.
Запобігайте попередженням під час кодування.
Не турбуйтеся про те, що ви пропустите законну помилку. Ваш код все одно стане червоним, якщо ви помилитеся, що буде візуально вказувати, що щось не так.