【エクセル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