Объект Err
Содержит информацию об ошибках периода выполнения.
Замечания
Свойства объекта Err задаются генератором ошибки — Visual Basic, объектом или программистом.
Свойство по умолчанию объекта Err — Number. Так как свойство по умолчанию может быть представлено именем объекта Err, более ранний код, написанный с помощью функции Err или инструкции Err , не требуется изменять.
Когда возникает ошибка периода выполнения, свойства объекта Err заполняются информацией, которая однозначно идентифицирует ошибку, а также сведениями, которые могут использоваться для обработки ошибки. Чтобы создать ошибку времени выполнения в коде, используйте метод Raise .
Свойства объекта Err сбрасываются до нуля или нулевой длины строк ("") после инструкции Exit Sub, Exit Function, Exit Property или Resume Next в подпрограмме обработки ошибок. При использовании оператора Resume любого вида вне программы обработки ошибок не приводит к сбросу свойств объекта Err в исходные значения. Метод Clear можно использовать для явного сброса Err.
Используйте метод Raise , а не инструкцию Error , чтобы создавать ошибки во время выполнения для системных ошибок и модулей класса. Использование метода Raise в другом коде зависит от объема возвращаемых сведений.
Объект Err является внутренним объектом с глобальной областью видимости. Нет необходимости создавать его экземпляр в программном коде.
Пример
В этом примере используются свойства объекта Err (Number, Description, HelpContext, HelpFile, Source) при создании диалогового окна сообщения об ошибке.
Обратите внимание, что если метод Clear используется первым при генерировании ошибки Visual Basic с помощью метода Raise, значения по умолчанию в Visual Basic становятся свойствами объекта Err.
Dim Msg
' If an error occurs, construct an error message
On Error Resume Next ' Defer error handling.
Err.Clear
Err.Raise 6 ' Generate an "Overflow" error.
' Check for error, then show message.
If Err.Number <> 0 Then
Msg = "Error # " & Str(Err.Number) & " was generated by " _
& Err.Source & Chr(13) & Chr(13) & Err.Description
MsgBox Msg, vbMsgBoxHelpButton, "Error", Err.Helpfile, Err.HelpContext
End If
См. также
- Операторы (Visual Basic для приложений)
- Обработка ошибок времени выполнения в VBA
- Перехватываемые ошибки
- Объекты (Visual Basic для приложений)
- Справочник по библиотеке объектов для Office (элементы, свойства, методы)
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.