Err オブジェクト (Visual Basic)

更新 : 2007 年 11 月

Err オブジェクトは、ランタイム エラーに関する情報を保有しています。

解説

Err オブジェクトのプロパティは、エラーを発生させた Visual Basic、オブジェクト、またはプログラマによって設定されます。

ランタイム エラーが発生すると、そのエラーを一意に識別するための情報と、エラーを処理するためまたはエラーの詳細を把握するのに使用できる情報が、Err オブジェクトのプロパティに格納されます。コード内でランタイム エラーを生成するには、Raise メソッドを使います。

Err オブジェクトのプロパティは、エラー処理ルーチン内の Exit Sub、Exit Function、Exit Property、または Resume Next の各ステートメントの後で、0 または長さ 0 の文字列 ("") にリセットされます。エラー処理ルーチンの外側で Resume ステートメントの任意のフォームを使用した場合は、Err オブジェクトのプロパティはリセットされません。Err オブジェクトを明示的にリセットするには Clear メソッドを使います。

システム エラーおよびクラス モジュールに対してランタイム エラーを生成するには、Error ステートメントではなく、Raise メソッドを使います。他のコードで Raise メソッドを使うかどうかは、返される情報の量によって決まります。

Err オブジェクトは、グローバル スコープを持つ組み込みオブジェクトです。したがって、コード内でオブジェクトのインスタンスを作成する必要はありません。

ka13cy19.alert_note(ja-jp,VS.90).gifメモ :

ErrorToString 関数 を使用すると、特定のエラー番号に対応するエラー メッセージを見つけることができます。

使用例

次に示す例では、エラー メッセージ ダイアログ ボックスを作成する処理で Err オブジェクトのプロパティを使用しています。Clear メソッドを最初に使用した場合は、Raise メソッドを使って Visual Basic エラーを生成すると、Visual Basic の既定の値が Err オブジェクトのプロパティになることに注意してください。Description プロパティは、エラーを説明する文字列を返します。

Dim Msg As String
' 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 & ControlChars.CrLf & Err.Description
  MsgBox(Msg, MsgBoxStyle.Information, "Error")
End If

必要条件

名前空間 : Microsoft.VisualBasic

**アセンブリ :**Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll)

参照

処理手順

方法 : Visual Basic ランタイム エラーに関する情報を取得する

方法 : エラー オブジェクトから情報を取得する

参照

Err オブジェクトのメンバ

Error ステートメント

On Error ステートメント (Visual Basic)

Exit ステートメント (Visual Basic)

Resume ステートメント

ErrorToString 関数