Обработка ошибок

Чтобы установить системное прерывание по обнаружению ошибки, поместите оператор On Error туда, где вы хотите активизировать это системное прерывание.

Sub CausesAnError()

' Direct procedure flow.

On Error GoTo ErrorHandler

' Raise division by zero error.

Err.Raise 11

Exit Sub

 

ErrorHandler:

' Display error information.

MsgBox "Error number " & Err.Number & ": " & Err.Description

End Sub

Другая форма оператора On Error Resume Nextпередает управление оператору, следующему за оператором с ошибкой. Этот оператор приводится ниже.

 

Publ ic Function MyFunctionO

On Error Resume Next

If Err Then

‘обработка

End If

Exit Function

 

Resumeвозвращает управление программой оператору, вызвавшему ошибку, и пытается выполнить его снова. Если это приводит к повторной ошибке, то программа обработки ошибок сработает снова. Если вы используете оператор Resume, то лучше применить счетчик возникновения ошибки. По достижении неко­торого предела счетчика следует выйти из процедуры. Resume Nextпередает управление оператору, следующему за оператором, приведшим к ошибке. Вы мо­жете использовать этот прием только в том случае, если уверены, что ошибка — не критическая и может быть проигнорирована, или если ваш обработчик ошибок откорректирует ситуацию, вызвавшую ошибку.








Дата добавления: 2015-07-30; просмотров: 690;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.