Запуск, выполнение и отладка макросов
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Для получения окончательной версии созданного макроса часто требуется проверка его работы в режиме отладки. Отладкой называют процесс поиска и исправления ошибок в программах.

VBA не может диагностировать и исправлять ошибки за пользователя, но предоставляет средства, помогающие анализировать поток управления программой, значения переменных и свойств объектов по мере выполнения операторов. Средства отладки позволяют заглянуть «внутрь программы» и разобраться, что в ней происходит и почему.

Отладочные средства VBA поддерживают точки останова, контрольные выражения, пошаговое выполнение кода по одному оператору или процедуре за шаг и просмотр значений переменных и свойств. VBA предоставляет и специфические возможности отладки, позволяя, например, внести изменения в программу и продолжить ее выполнение, указать следующий исполняемый оператор и протестировать процедуру в режиме прерывания.

Прерыванием называют состояние, когда программа Visual Basic остается загруженной, но после выполнения одной инструкции следующая не выполняется. Для прерывания программы Visual Basic надо установить в программе точку останова. Таким образом, точка останова задается, чтобы приостановить выполнение программы на определенной инструкции в процедуре, например, там, где может возникать ошибка. Если точки останова больше не нужны, они удаляются.

Чтобы добавить точку останова в окне модуля, следует перевести курсор в строку, на которой надо приостановить выполнение, и нажать кнопку    на панели инструментов или клавишу F9.

Для того чтобы снять точку останова, следует перевести курсор в строку, в которой поставлена точка останова, и нажать клавишу F9. Если точка останова удалена, то подсветка строки отменяется. Для продолжения выполнения программы нужно выбрать команду Продолжить в меню Запуск.

Для прерывания программы можно также добавить в процедуру инструкцию Stop или нажать клавиши CTRL+BREAK во время выполнения программы.

Чтобы помочь пользователю обнаруживать ошибки любых типов и контролировать ход выполнения программ, в Visual Basic имеются средства отладки, позволяющие выполнять программы в пошаговом режиме, следить за изменением значений переменных или выражений. Выполнение программы Visual Basic в пошаговом режиме позволяет определить, в каком месте программы возникает ошибка. Такой режим позволяет видеть результаты выполнения каждой программной строки.

Пройти процедуру в пошаговом режиме можно без прерывания программы. Для этого в окне модуля нужно установить курсор в нужной процедуре и нажать кнопку Шаг с заходом на панели инструментов. Те же действия выполнятся в результате нажатия клавиши F8.

Одно нажатие клавиши влечет выполнение очередной строки программы. Следующая подлежащая исполнению строка выделяется желтым фоном. Выполнение процедуры можно остановить нажатием кнопки Сброс на панели инструментов.

Полезным моментом в процессе отладки макроса является просмотр значений переменных в области локальных переменных окна отладки. Чтобы визуализировать данное окно нужно выполнить команды Вид ÞОкно локальных переменных или нажать кнопку Окно отладки  на панели инструментов.

 


Рис. 5. Окно редактора при работе в режиме отладки

 

 

В появившемся окне будут автоматически выводиться имя, текущее значение и тип всех переменных и объектов текущей процедуры (рис. 6). Значения обновляются при каждой остановке программы. Для изменения значения переменной в области локальных переменных необходимо выбрать существующее значение и ввести новое.

 

Рис. 6. Окно локальных переменных

 

Когда окно отладки открыто, его обновление происходит автоматически при каждом переключении из режима выполнения в режим прерывания.

Элементами окна являются Выражение, Значение, Тип.

Выражение - список имен переменных. Первая переменная в этом списке – особая переменная модуля, которая может быть развернута для просмотра всех переменных уровня текущего модуля. Для модулей класса определена системная переменная <Me>. Для стандартных модулей ее имя совпадает с именем модуля. Редактирование данных в этом столбце невозможно.

Значение - список значений переменных. При выборе с помощью мыши значения из этого столбца, курсор принимает форму буквы I. В этом режиме следует изменить данные, а затем нажать клавиши ENTER, СТРЕЛКА ВВЕРХ, СТРЕЛКА ВНИЗ, TAB, SHIFT+TAB или кнопку мыши для проверки введенных данных на допустимость. Если введенное значение некорректно, поле редактирования остается активным, а само значение выделяется. Также отображается окно сообщений, описывающее возникшую ошибку. Для отмены изменений следует нажать клавишу ESC.

Все числовые переменные должны иметь значение. Строковые переменные могут быть пустыми.

Тип - отображает тип переменных. Данные в этом столбце не редактируются.

Запуск макроса в обычном режиме из редактора Visual Basic возможен нажатием клавиши F5.

После того как макрос отлажен, его можно выполнить в Microsoft Excel. Для запуска макроса из Excel в меню Сервис установите указатель на пункт Макрос и выберите команду Макросы. В поле Имя макроса введите имя того макроса, который нужно выполнить и нажмите кнопку Выполнить. Для прерывания выполнения макроса следует нажать клавишу ESC.

Для упрощения процесса вызова макроса на выполнение можно добавить на панель инструментов настраиваемую кнопку и сопоставить ей имя нужного макроса. Для этого вначале необходимо инициализировать команду Вид ÞПанели инструментов ÞНастройка… ÞКоманды. Затем из списка категорий команд выбрать Макросы и перетащить Настраиваемую кнопку на панель инструментов и в заключение поставить ей в соответствие имя требуемого макроса.

 


Дата: 2019-04-23, просмотров: 172.