ВУЗ:
Составители:
Рубрика:
1.5. Отладка программ и обработка ошибок 92
3
Если возникает ошибка выполнения, а процедуры обработки этой ошибки
нет, то исполнение макроса прерывается и выводится стандартное
сообщение, которое пользователю трудно понять. И самое главное – макрос
не доводит до завершения операцию, для выполнения которой он
предназначен.
Логические ошибки
трудно заметить и устранить. Логические ошибки не
приводят к прекращению компиляции или выполнения. Однако они не
являются причиной того, что программа не выдает желаемых результатов.
Ошибки данного типа идентифицируются путем тщательной проверки с
помощью средств отладки VBA. Рассмотрим пример макроса Word, который
используется для заполнения списка числами от 1 до 20.
Sub NumberList
Dim Counter As Integer
While Counter < 20
Selection.TypeText Text:=Str$(Counter) & "." & vbTab
Selection.TypeParagraph
Counter = Counter + 1
Wend
End Sub
Проблема состоит в том, что в список не добавляется число 20, так условие
Counter < 20 не позволяет переменной Counter достичь значения 20.
Эта ошибка является логической, и поэтому VBA не идентифицирует ее при
компиляции или выполнении программы.
Средства VBA, помогающие программисту бороться с ошибками, включают:
специальные инструкции, поддержку пошагового режима выполнения,
средства обработки ошибок выполнения.
1.5.2 Средства отладки
Одним из самых простых инструментов, используемых для предотвращения
множества ошибок в приложениях VBA, является инструкция Option
Explicit, определяющая необходимость явного задания переменных в
программах.
(См. параграф 3.3.2.1 "Переменные, константы и типы данных")
Отладка программ выполняется главным образом в режиме прерывания.
Переход в данный режим выполняется:
При нажатии кнопки Отладка в окне сообщения об ошибке выполнения.
При прерывании работы макроса с помощью комбинации клавиш
<Ctrl>+<Break>. При этом текущая инструкция выделяется в окне модуля.
По достижении точки останова (точку останова в программе можно
снять/установить командой ¾ Отладка ¾ Точка останова), или с
Страницы
- « первая
- ‹ предыдущая
- …
- 89
- 90
- 91
- 92
- 93
- …
- следующая ›
- последняя »