Обработка ошибок в 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5