- ベストアンサー
access2000のwhere条件なんですが・・・
今、テーブルAの中に「回数」というフィールドがあります。その値が一定条件以上のレコードだけを抽出したいのです。 抽出条件は、その都度変わってしまうので、kazu=Dcount("回数","テーブルA")-5 としています。 でも、VBAでSELECT~~WHERE[回数]>kazu といれても、kazuが値として読み込まれないみたいで、「パラメータの入力」画面が出てしまいます。 kazuを値として認識させるには、どうしたら良いのでしょうか・・・。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
注意するのは、SQL文は文字列として記述するということです。 ("SELECT~"のように、"" で括りますよね。) ご質問のように "" の中に、kazu と記述すると、"kazu" という文字列として認識されてしまい、kazu の変数値としては認識されません。 で、具体的には、 "SELECT~~WHERE [回数]>" & CStr(kazu) kazu は数値型のデータですから、CStr関数で文字列型に変換してから、& で SQL文につなげています。
お礼
できました!!!! ありがとうございました。 CStrっていうものがあるんですね。 助かりました。 これで、完成します。 本当にありがとうございました。