燈明日記 このページをアンテナに追加 RSSフィード

ごあいさつ

燈明日記へようこそ!!

燈明日記の主なテーマは、以下の通りです。

そして、燈明日記へ来られたのも『私』と『あなた』の何かのご縁です。なので、どうぞごゆっくりご覧下さい!


2006/12/26(火)

[] VBでの独自エラー(vbObjectError)について

たとえば、Visual Basicで定義されているエラーのほかにも、独自のエラーを定義したい場合があります。

そのような場合は、定数 vbObjectError にエラー番号を加算して番号を作成します。


定数 vbObjectError には、vbObjectError + 512 までの範囲の数が予約されていて、エラー番号をこの範囲を超える数に指定すると、Visual Basic の将来のバージョンや、その他の Microsoft Basic 製品との重複を防ぐことができます。


(注意:アプリケーションで使用しているActiveXコントロールでも、独自のエラー番号を定義している可能性があり、重複を避けるための確認が必要な場合があります。)


独自のエラー番号を定義するには、モジュールの宣言セクションで定数として宣言します。

' エラー定数
Const gcstUserErr1 = 1 + vbObjectError + 512
Const gcstUserErr2 = 2 + vbObjectError + 512

このようにしておくと、通常のエラーの場合と同様に、Raise メソッドを使って独自のエラーを発生させることができます。

この場合、Err オブジェクトの Description プロパティは、"アプリケーション定義またはオブジェクト定義のエラーです。" という標準の記述を返します。

独自のエラーの記述を使う場合は、記述を Raise メソッドに引数として与える必要があります。

例、

Err.Raise gcstUserErr1, "メイン処理", "独自のエラーメッセージ"

尚、本コンテンツは、MSDN(2001)ヘルプ『エラーの生成』を大変参考にさせて頂きました。

田野倉 博文田野倉 博文 2017/02/20 13:48 >そのような場合は、定数 vbObjectError にエラー番号を加算して番号を作成します。
とのことですが、この定数を加算しておく理由が今ひとつ飲み込めないのですが、、、もう少し追加的にご解説をお願いできないものでしょうか。

chaichanPaPachaichanPaPa 2017/02/20 23:21 プログラマーをやめて、7年経ちますので、自信がないのですが・・・
定数を加算しておくで、Visual Basic の将来のバージョンや、その他の Microsoft Basic 製品とのエラー番号の重複を防ぐことができるのではないでしょうか・・・
逆にいうと、「vbObjectError + 512」は予約済みで使えないってことだと思います。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/chaichanPaPa/20061226/1167133931
リンク元