VBScriptの実行時エラー
VBScriptのエラーを大きく分けると二種類あります。
一つは「構文エラー」。もう一つは「実行時エラー」です。
ここではVBScriptで実行時エラーについて解説します。
VBScriptのコード上でなんらかのエラーが発生すると、通常はエラーが発生した行で処理は終了し、 エラー情報のダイアログボックスが表示されます。
実行時エラーの対応法としては、「エラーを無視する」あるいは「エラー情報によって制御する」などがあります。
VBScriptの実行時エラーを無視:サンプルコード
' 実行時エラーを無視 On Error Resume Next ' 実行時エラーを発生させる value = 5 / 0 WScript.Echo "実行時エラーを無視" ' 実行時エラー時の動作を元に戻す On Error Goto 0
コード中に「On Error Resume Next」を記述すると以降の実行時エラーを無視して次の行の処理を続けます。
実行時エラー時の動作を元に戻すには「On Error Goto 0」と記述します。
エラー情報によって制御する:サンプルコード
' 実行時エラーを無視 On Error Resume Next ' 実行時エラーを発生させる value = 5 / 0 If Err.Number <> 0 Then WScript.Echo Err.Description End If Err.Clear ' 実行時エラー時の動作を元に戻す On Error Goto 0
エラー情報を取得するには Errオブジェクトを使用します。
ErrオブジェクトのプロパティであるNumber(エラー番号)の値を調べることで、エラーが発生しているか確認することが出来ます。
エラーが発生していない場合はNumberには 0 が設定されます。
Errオブジェクトのプロパティ
Description | エラーについての説明 |
HelpContext | ヘルプ ファイルのトピックを表すコンテキスト番号 |
HelpFile | ヘルプ ファイルへのパス |
Number | エラーを指定する数値 |
Source | 最初にエラーを発生させたオブジェクトまたはアプリケーションの名前 |
Errオブジェクトのメソッド
Clear | Err オブジェクトのすべてのプロパティの設定値をクリア |
Raise | 実行時エラーを生成 |