Err オブジェクトErr object

実行時エラーに関する情報が含まれます。Contains information about run-time errors.


Err オブジェクトのプロパティは、エラーの生成元 (Visual Basic、オブジェクト、またはプログラマー) によって設定されます。The properties of the Err object are set by the generator of an error—Visual Basic, an object, or the programmer.

Err オブジェクトの既定のプロパティは、Number です。The default property of the Err object is Number. 既定のプロパティはオブジェクト名 Err で表すことができるので、Err 関数または Err ステートメントを使用して作成された以前のコードを変更する必要はありません。Because the default property can be represented by the object name Err, earlier code written by using the Err function or Err statement doesn't have to be modified.

実行時エラーが発生すると、Err オブジェクトのプロパティには、エラーを一意に示す情報およびエラーの処理に使用できる情報が設定されます。When a run-time error occurs, the properties of the Err object are filled with information that uniquely identifies the error and information that can be used to handle it. コードで実行時エラーを生成するには、Raise メソッドを使用します。To generate a run-time error in your code, use the Raise method.

Err オブジェクトのプロパティは、エラー処理ルーチン内の Exit SubExit FunctionExit Property、または Resume Next ステートメントの後で 0 または長さ 0 の文字列 ("") にリセットされます。The Err object's properties are reset to zero or zero-length strings ("") after an Exit Sub, Exit Function, Exit Property, or Resume Next statement within an error-handling routine. エラー処理ルーチン外で Resume ステートメントのいずれかの形式を使用した場合、Err オブジェクトのプロパティはリセットされません。Using any form of the Resume statement outside of an error-handling routine will not reset the Err object's properties. Err を明示的にリセットするには、Clear メソッドを使用できます。The Clear method can be used to explicitly reset Err.

システム エラーおよびクラス モジュールに実行時エラーを生成するには、Error ステートメントではなく Raise メソッドを使用します。Use the Raise method, rather than the Error statement, to generate run-time errors for system errors and class modules. 他のコードでの Raise メソッドの使用は、返す必要のある情報量によって異なります。Using the Raise method in other code depends on the richness of the information that you want to return.

Err オブジェクトは、グローバルなスコープの組み込みオブジェクトです。The Err object is an intrinsic object with global scope. コード内にそのインスタンスを作成する必要はありません。There is no need to create an instance of it in your code.


この例では、Err オブジェクトのプロパティ (NumberDescriptionHelpContextHelpFileSource) を使用して、エラー メッセージ ダイアログ ボックスを作成します。This example uses the properties of the Err object (Number, Description, HelpContext, HelpFile, Source) in constructing an error-message dialog box.

Clear メソッドを最初に使用すると、Visual Basic エラーを Raise メソッドで生成するときに、Visual Basic の既定値が Err オブジェクトのプロパティになることに注意してください。Note that if you use the Clear method first, when you generate a Visual Basic error with the Raise method, Visual Basic's default values become the properties of the Err object.

Dim Msg
' If an error occurs, construct an error message
On Error Resume Next    ' Defer error handling.
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) & Err.Description
    MsgBox Msg, , "Error", Err.Helpfile, Err.HelpContext
End If

関連項目See also

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.