- ベストアンサー
VBでSQLの記述
ACCESS VBAで今あるシステムを作成しているのですが、 SQL文を使う際に rs.Open "SELECT * FROM abc WHERE def='" & ghi & "'" などと記述しますが、このシングルコーテーションや、セミコロンはどのような意味があってつけてるのですか? ごちゃごちゃしてて理解するのに苦労します。 どなたかお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 Where区は、「AND」「OR」で条件を追加します。 Where def=ghi AND xxx=yyy ※def=ghi とxxx=yyy の両方が当てはまるもの Where def=ghi or xxx=yyy ※def=ghi とxxx=yyy の片方が当てはまるもの となります。
その他の回答 (1)
- jurarumin
- ベストアンサー率34% (190/544)
rs.Open "SELECT * FROM abc WHERE def='" & ghi & "'" ですが、 ”~”がVBA内での文字列(文字の集まり)を意味しています。 同じく'~'は、SQL(ACCESS)で使用する場合の文字列を意味します。 VBA内で"SELECT * FROM abc WHERE def='○○'"の文字列をACCESSに渡して ACCESSが「SELECT * FROM abc WHERE def='○○'」を実行しています。
補足
ありがとうございます。 あと1つ聞きたいことがあるのですが、同じくVBA内でWHERE句を2つ以上記述する場合にはどのようにすればいいのでしょうか? SELECT * FROM abc WHERE def=ghi WHERE xxx=yyy というのを同時に1つの文にしたいのですが。 またお願いします。
お礼
何度も助けていただいてありがとうございました。 また何かあったらよろしくお願いします。