りゅう
はじめに
今回は、エラーを強制的に発生させる方法について解説します。
他のプログラミング言語では、「throw」に該当します。
この記事を読むメリット
- エラーを強制的に発生させる方法の詳細を解説します。
- ユーザ定義のエラー番号やメッセージなどの設定方法についても解説します。
使用例
サンプルコードを交えて解説いたします。
サンプルコード
以下のサンプルでは、セルに”NG”と入力されていた場合にエラーを発生させるソースコードです。
エラー番号は1000を設定し、エラー内容は「処理結果NGです」という文字列を設定しています。
エラーが発生した場合、ErrHandleラベルに遷移しメッセージボックスを表示します。
サンプルコード
Public Sub raiseError()
On Error GoTo ErrHandle
If ThisWorkbook.Worksheets("Sheet1").Range("B1").Value = "NG" Then
' [Sheet1] B1セルに "NG"が入力されていた場合 エラーを生成
Err.Raise Number:=1000, Description:="処理結果NGです"
End If
Exit Sub
ErrHandle:
' メッセージボックスにエラーを表示
MsgBox "Number:" & Err.Number & vbCrLf & _
"Description:" & Err.Description, vbCritical
End Sub
実行結果
実行前
実行後
詳細解説
構文や注意点などについて解説します。
構文
構文
ErrorObject.Raise number, description
引数
# | 引数 | 必須 | 詳細 |
1 | number | ○ | エラー番号を指定します。 指定可能な範囲は 513 ~ 65535です。 |
2 | description | エラー内容を指定します。 |
りゅう
エラー番号について、0 ~ 512についてはシステムエラー用に既に予約されている番号となります。
従って、513 ~ 65535の範囲での指定となります。
従って、513 ~ 65535の範囲での指定となります。
さいごに
いかがでしたでしょうか。
予めエラーが想定されるコードに対しては、Raiseメソッドでユーザ定義のエラーを出力するようにしましょう。
エラー番号と対応策を記載したマニュアルを用意すると、ツール運用が楽になります。
コメント