【作成中】【Excel VBA】エラー処理

マクロを実行しているブック(Excelファイル)のパスが欲しい時があります。例えば、同じフォルダのファイルを開くような場合です。

ApplicationオブジェクトのThisWorkbookプロパティはVBAを実行しているブックを参照します。したがって、

目次

On Error GoToステートメント

On Error GoToステートメントは、エラーが発生したときに指定した行ラベルに制御を移します。On Error GoToステートメントはエラーが発生する可能性がるコードの前に記述します。

Sub プロシージャー名()
    On Error GoTo 行ラベル
        通常実行する処理
        Exit Sub
行ラベル:
    エラーが発生した場合の処理
End Sub

On Error Resume Nextステートメント

On Error Resume Nextステートメントは、エラーが発生しても、そのエラーを無視して処理を継続します。

On Error GoTo 0ステートメント

On Error GoTo 0ステートメントは、エラートラップを無効にするステートメントです。このステートメントが記述された行以降でエラーが発生すると通常のエラー処理(処理が中断されエラーメッセージを表示)が行われます。

ResumeとResume Nextステートメント

Resumeステートメントは、エラー処理ルーチンの実行後に処理を再開するために使用します。

種類説明
Resumeエラーが発生した行から処理を再実行する
Resume Nextエラーが発生した行の次の行から処理を再実行する
Resume 行ラベル指定した行ラベルへ戻って処理を再実行する
よかったらシェアしてね!
  • URLをコピーしました!
目次