1. ホーム
  2. スクリプト・コラム
  3. vbs

VBScriptにおけるOn Error文の使用法まとめ

2022-02-08 02:31:32

On Errorステートメントを使用しない場合、実行時エラーはすべて致命的なものとなります。エラーハンドラとは、On Errorステートメントによって開かれたハンドラで、quot;active"エラーハンドラとは、エラー処理中に許可されたエラーハンドラのことです。

On Error GoTo 0

現在のプロセスで開始されたすべてのエラーハンドラが無効であることを示す。 

エラー時に次を再開

実行時エラーが発生した場合、コントロールはエラーが発生したステートメントの直後のステートメントに移動し、そこで実行を継続することを示します。オブジェクトにアクセスするときは、On Error GoToの代わりにこのフォームを使用します。 

エラー発生時GoTo行

エラーハンドラが開始され、ルーチンは必要なlineパラメータで指定された行から始まります。lineパラメータは、任意の行ラベルまたは行番号です。ランタイムエラーが発生すると、制御はその行にジャンプし、エラーハンドラを起動する。指定された行は、On Error ステートメントと同じプロシージャ内になければならず、そうでない場合はコンパイル時エラーが発生する。

一般的に、作成したオブジェクトやコントロールでエラーキャッチを行う場合、On Error Resume Next を使用し、Errを判断した後、エラーの種類に応じて処理を行う必要があります。

エラーに関連するコードのスニペットを添付します。

On Error Resume Next
Dim Msg
Err.Clear
Err.Raise 6 ' Generate "Overflow" error.
Err.Helpfile = "yourHelp.hlp"
Err.HelpContext = 5
If Err.Number <> 0 Then
  Msg = "Press F1 or Help to see " & Err.Helpfile & " topic for" & _
  " the following HelpContext: " & Err.HelpContext
  MsgBox Msg, , "error: " & Err.Description, Err.Helpfile, Err.HelpContext
End If


今回の記事は以上です。