【エクセルVBA】エラー処理テクニック

当ページのリンクには広告が含まれています。

スポンサーリンク

エクセルVBAにて エラー処理 をするテクニックを解説します

クリックしてジャンプ

エラーハンドラへのジャンプ

On Error GoToステートメントは

エラーが発生した場合に指定したラベル(エラーハンドラ)にジャンプします

エラー処理を集中して記述することができ、コードの可読性が向上します

On Error GoTo ErrorHandler
' ここに通常のコードを記述
Exit Sub
ErrorHandler:
    MsgBox "エラーが発生しました: " & Err.Description
    Resume Next

エラー番号の取得

Err.Numberプロパティは

発生したエラーの番号を返します

この番号を用いて、特定のエラーに対する対応を行うことができます

If Err.Number <> 0 Then
    MsgBox "エラー番号: " & Err.Number
End If

エラーの説明を取得

Err.Descriptionプロパティは

発生したエラーの詳細な説明を返します

ユーザーにエラー情報を提供する際に有用です

MsgBox "エラーの説明: " & Err.Description

エラーオブジェクトをクリア

Err.Clearメソッドは

エラーオブジェクトの現在の値をクリアします

エラー処理後にエラー情報をリセットする際に使用します

Err.Clear

次の行から処理を続行

On Error Resume Nextステートメントは

エラーが発生しても次の行から処理を続けるように指示します

このモードではエラーが無視されるため

エラーが発生した後にErr.Numberをチェックして

適切に処理する必要があります

On Error Resume Next
' エラーが発生しうるコード
If Err.Number <> 0 Then
    ' エラー処理
End If

エラーハンドリングを無効

On Error GoTo 0ステートメントは

On Error Resume Nextによるエラーハンドリングを無効にし

エラーが発生した場合にデフォルトのエラーハンドラを使用するように設定します

エラーハンドリングの範囲を制限することができます

On Error GoTo 0

スポンサーリンク

クリックしてジャンプ