質問: access(vba)のエラー処理 いつもお世話になりますm(__)m access2003(vba)のエラー処理について教えて下さい。 いつも、エラー処理は、各private sub毎に記述しています。 例えば private sub a() on error goto errshori (処理など) exit sub errshori: (エラー処理) end sub private sub b() on error goto errshori (処理など) exit sub errshori: (エラー処理) end sub 上記のようにしていますが、エラー処理は共通で、どうにか1つの記述(?)で全てのプロシージャに対してエラー処理が出来ればと思っています。 いろいろ調べましたが見あたらず、今は一つ一つのプロシージャに「on error...」と書いています。 mdbファイル単位で「エラーがあるとこれを実行」のような共通のエラー処理を実装する事は出来ないのでしょうか? お詳しい方、是非ご教授下さい。可能であればサンプルを記述頂くと助かります。 宜しくお願い致しますm(__)m
回答: 下記のようなのは参考になりませんか。 ただし、共通プロシジュアーでの処理によっては(参照すべき変数のスコープが問題?)うまく行くかどうか心配だが 質問では「エラー処理」としか書いてないのだが、質問者の場合の具体的処理で考えてみてください。 下記test01,test02では0と答えてエラーを起してみてください。 sub test01() x = inputbox("数") on error goto p1 x = 12 / x msgbox x exit sub p1: sub1 ("test01") end sub sub sub1(x) msgbox x & " 0で割り算エラー" end sub sub test02() x = inputbox("数") on error goto p1 x = 12 / x msgbox x exit sub p1: sub1 ("test02") end sub