access vba の処理を途中で終わる。

公開日:  最終更新日:2018/09/17

サブルーチンを作っていて、
呼び出し元に処理を返すのではなく、その場でプログラムを終わらせたい時、
どうすればいいのか? どういう処理が選択できるか?
という質問のスレッド。

なぜかVBではそういう質問をすると怒られたり、Exit Sub 使えとか言われたりするようです。
しかし、当然 Exit Sub では呼び出し元に処理が戻ります。

で、たとえば強制終了するには

End '強制終了

というコードがあります。
なぜか MS Access VBA の質問スレッドでこれを答えた人は誰もいませんでした。

もちろん、他の処理でも別にいいと思いますが、
Err.Raise を使うとか(Resume したら意味ないですが…)

やれ、「処理の内容を見ないと…」とか、「Exit Sub です…」とか、
はては 「goto を使うのは邪道」というのまで出てきて、
きっと初心者であろう質問者の本質に答えられる人は、そこにはいなかったように思われます。

いつも思うのですが、QAスレッドで「マニュアル読め」とか、「FAQを読み返せ」とか、「出直して来い」とか言う人々、
きっと技術力無いんじゃないかと思うのです。
そんな風に敵意を出すぐらいなら、黙ってる方がまともだと思います。
人間として、社会人として、技術者として、どれも3流か4流、あるいはそれ以下だと思います。

もちろん、質問者の意図を汲み取ってすばらしい回答を答えている立派な人もいますが、どうも少数派に思えます。

幸いな事に、昔の私は良い先輩に恵まれて本当に丁寧に色々教えてもらいました。
調べ方すら知らなかった私に「そんな事ぐらい勉強してから質問したら…」みたいな事を言う人は居なかった。
どこをどう調べるのか、調べ方から教えてくれた事に、本当に感謝しています。

自分の質問が見当はずれなのがどうかもわからなかったり、どう質問したらいいのかわからない人もいます。
どこを調べればいいのかもわからない、なんてことは、プログラマならきっと経験した事があるはずです。

そういう人をいじめて、優越感に浸るような人間にだけは、なりたくないな。

グチも文句も多い私が言うのもなんですが、そういう風に思います。

PAGE TOP ↑