MS VBA | Прервать работу кода с помощью BreakPoint |
Если перед вызовом функции пометить ее в каком-нибудь месте "точкой останова" (BreakPoint, F9), то после запуска программа остановится на помеченном BreakPoint в ожидании дальнейших действий разработчика – пройтись ли "по шагам" (Step Into) или "пропустить команду" (Step Over – переход к следующему BreakPoint) и т.д. – см. в меню Debug (View, Debug). Также, с помощью данной нам (шикарной, к слову сказать) отладки можно просматривать полученные значения переменными, отслеживать какие-то предварительные или окончательные результаты функций, возвращаться к командам вспять, приписывать тестовые куски и проходить их отладчиком, и так далее.
Пример:
1. Поставим BreakPoint на название функции UserName с помощью выставленного на данную строку курсора и F9:
2. В окне Immediate вызовем имя функции: ?UserName() (см. также как работать с окном Immediate)
3. Точка останова (BreakPoint) сработает и остановит работу функции на строке, на которой стоит BreakPoint:
4. С помощью меню (или панели) Debug можно "пошагать" по командам кода, если необходимо что-то приписывая, возвращаясь назад, чтобы снова пройтись и отладить одни и те же команды. "Возвращаться" назад (или пропустить, пройти вперед) можно с помощью перетаскивания желтой метки на необходимую команду – точку нового отсчета.
5. Просматривать результаты можно наведением мышью на пройденные (испытанные) выражения и переменные. Например в начале функции UserName видим, что UserName еще пуст (рис. 1), пройдя же все шаги и остановившись на End Property, видим, что UserName уже принял обработанное значение имени пользователя (рис. 2):
Рис. 1
Рис. 2
Использован материал из примера Получить логин пользователя.
|