結論から言うと、VBAにはTry-Catch-Finallyが存在しない。 そこでOn Errorステートメントとラベルを使う。 一番簡単な例外処理(エラーハンドリング)は以下のとおり。 Sub ErrHandlingTest() On Error GoTo ErrorHandler Dim value As Long value = 2 / 0 '-- ゼロ除算のためエラー発生 Exit Sub ErrorHandler: '-- 例外処理 MsgBox Err.Number & ":" & Err.Description, vbCritical & vbOKOnly, "エラー" End Sub このようにすると、エラーが発生した時点で「On Error GoTo ラベル名」に指定したラベル名(上記の例ではErrorHandler)に飛ぶ。 エラーごとにキャッチしたい ひとつの例外しか