• ベストアンサー

VBでSQLの記述

ACCESS VBAで今あるシステムを作成しているのですが、 SQL文を使う際に rs.Open "SELECT * FROM abc WHERE def='" & ghi & "'" などと記述しますが、このシングルコーテーションや、セミコロンはどのような意味があってつけてるのですか? ごちゃごちゃしてて理解するのに苦労します。 どなたかお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jurarumin
  • ベストアンサー率34% (190/544)
回答No.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 の片方が当てはまるもの となります。

noname#10904
質問者

お礼

何度も助けていただいてありがとうございました。 また何かあったらよろしくお願いします。

その他の回答 (1)

  • jurarumin
  • ベストアンサー率34% (190/544)
回答No.1

rs.Open "SELECT * FROM abc WHERE def='" & ghi & "'" ですが、 ”~”がVBA内での文字列(文字の集まり)を意味しています。 同じく'~'は、SQL(ACCESS)で使用する場合の文字列を意味します。 VBA内で"SELECT * FROM abc WHERE def='○○'"の文字列をACCESSに渡して ACCESSが「SELECT * FROM abc WHERE def='○○'」を実行しています。

noname#10904
質問者

補足

ありがとうございます。 あと1つ聞きたいことがあるのですが、同じくVBA内でWHERE句を2つ以上記述する場合にはどのようにすればいいのでしょうか? SELECT * FROM abc WHERE def=ghi          WHERE xxx=yyy というのを同時に1つの文にしたいのですが。 またお願いします。

関連するQ&A