Обработка ошибок в VB
Формулировка задачи:
Доброго времени суток, Уважаемые!
Решил добавить в программу обработку ошибок, но работает это почему-то не так, как задумывалось.
Вот код:
Собственно, "Прервать" и "Продолжить" работают на ура, а вот с "Повтором" возникла проблема- если после окна с сообщением вставить необходимый файл в папку, то все хорошо. Однако, если дважды выбрать "Повтор" и файла в папке не появилось, то программа крашится, на сточке
хотя, казалось бы, программа должна возвращаться на метку 1 (с MsgBox'ом).
Собственно, вопрос: почему 1 раз программа отрабатывает, как нужно, а потом вылетает? Что я сделал не так?
Заранее спасибо!
Решение задачи: «Обработка ошибок в VB»
textual
Листинг программы
Dim nvar As VbMsgBoxResult
'...
On Error GoTo 1
'ловим ошибку
1: nvar = MsgBox("Отсутствует снимок карты!", vbAbortRetryIgnore, "Ахтунг!")
If nvar = vbRetry Then ' Выбрано повтор, повтор поиска необходимого файла для вставки
Resume 2
ElseIf nvar = vbAbort Then ' Выбрано прервать, завершение работы программы
End
ElseIf nvar = vbIgnore Then Resume 3 'Выбрано продолжить, игнорирование отсутствия файла, продолжение работы программы
End If