Access VBA SQL文のチェックにイミディエイト ウィンドウを使う方法。

VBA のプログラミングで、とても便利なSQL文ですが、あらかじめ用意されている予約語などの命令に比べると、間違いに気付き難いということがあります。

SQL文のチェックに便利なのが、イミディエイト ウィンドウです。上手く活用すると、SQL文の間違いを見つけやすくなります。

今回はイミディエイト ウィンドウを使った、SQL文のチェック方法をいくつか紹介します。


【1】Access で VBEを起動し、標準モジュールの test6 を表示します。

access-vba-188.gif

*VBEは「Altキー」+「F11キー」で起動できます。


【2】以下の図の位置で、ブレークポイントを設定して、dispData2()を実行します。

access-vba-179.gif


【3】プログラムを実行中に、変数 mySql にマウスを当てると、ポップアップで値が表示されますが、見難いですよね。

access-vba-180.gif


【4】そんな時は、イミディエイト ウィンドウを使うと便利です。

?mySql
access-vba-181.gif

イミディエイト ウィンドウでは、『プログラムの実行中』に変数の値を表示することもできるのです。特にSQL文が長くなってきた時に役立ちます。


【5】もっと簡単にするには、プログラムの中に書いてしまう方法があります。

Debug.Print mySql

access-vba-182.gif


【6】この方法だとレコードが表示される前に、必ずSQL文が表示されます。

access-vba-183.gif


【7】今度はわざと WHERE の前の半角スペースを無くしてみましょう。

access-vba-186.gif


【8】もちろんSQL文が間違っているので、エラーメッセージが表示されます。「終了」ボタンをクリックします。

access-vba-184.gif


【9】イミディエイト ウィンドウに表示されたSQL文を見ると、WHERE の前の半角スペースが無いことが確認できます。

access-vba-185.gif

今回はわざと間違いましたが、このようにイミディエイト ウィンドウでSQL文を確認することで、バグを見つけやすくなります。


【10】確認したら、SQL文を元に戻してください。

access-vba-187.gif


【11】SQL文の出力が不要な場合は、半角の「'」シングルクォーテーションを付けてコメントにしてください。

'Debug.Print mySql


【ワンポイント】

SQL文の表示は、実際にSQL文を実行する部分の前に書くことがコツです。後に書くとエラーが発生してプログラムが中断するため、SQL文を確認することができません。

したがってエラーが発生する前に、出力しておく必要があるのです。


当然ですがSQL文の知識がないと、間違いに気付くことができません。SQLについては Access SQL初心者入門講座 をご覧ください。


スポンサードリンク

スポンサードリンク






Access VBA 初心者入門講座 TOPへ