アクセス小僧:アクセス小僧:クエリの抽出条件を複数指定 [コンピューター]
住所録データベースから、年賀状を出すべき方々の
氏名、住所を抽出するためのクエリを作っていました。
住所録データベースには、年賀状を出したか、否かを設定する「送付済」
というフィールドがあり、次のような値をとります。
年賀状を出した人を抽出したければ、送付済IDの抽出条件に「2」(送付済)を設定すればOKです。
では、送付済フィールドの値に関わらず、レコード抽出したい場合はどうすればいいでしょうか?
ふつうは、抽出条件に何も入力しなければOKですね。
ですが、VBAで動的に抽出条件を変更したいので、「1 Or 2 Or 3」(-、送付済、喪中)としておきます。
抽出条件と抽出されるレコードは次の通りです。
なお、クエリの抽出条件をSQLで見ると、次のようなWHERE句になっています。
(HAVING句になる場合と、WHERE句になる場合の違いが分からない。。)
WHERE (((T_氏名住所.送付済ID)=1 Or (T_氏名住所.送付済ID)=2 Or (T_氏名住所.送付済ID)=3));
クエリの抽出条件をVBAで変更するやり方は、以下の記事を参考にして下さい。
アクセス小僧:VBAでクエリを変更
http://cheese999.blog.so-net.ne.jp/2017-08-16-1
氏名、住所を抽出するためのクエリを作っていました。
住所録データベースには、年賀状を出したか、否かを設定する「送付済」
というフィールドがあり、次のような値をとります。
送付済ID | 内容 |
1 | - |
2 | 送付済 |
3 | 喪中 |
年賀状を出した人を抽出したければ、送付済IDの抽出条件に「2」(送付済)を設定すればOKです。
では、送付済フィールドの値に関わらず、レコード抽出したい場合はどうすればいいでしょうか?
ふつうは、抽出条件に何も入力しなければOKですね。
ですが、VBAで動的に抽出条件を変更したいので、「1 Or 2 Or 3」(-、送付済、喪中)としておきます。
抽出条件と抽出されるレコードは次の通りです。
抽出条件 | 抽出されるレコード |
1 Or 1 Or 1 | - |
2 Or 2 Or 2 | 送付済 |
3 Or 3 Or 3 | 喪中 |
1 Or 2 Or 3 | -、送付済、喪中 |
なお、クエリの抽出条件をSQLで見ると、次のようなWHERE句になっています。
(HAVING句になる場合と、WHERE句になる場合の違いが分からない。。)
WHERE (((T_氏名住所.送付済ID)=1 Or (T_氏名住所.送付済ID)=2 Or (T_氏名住所.送付済ID)=3));
クエリの抽出条件をVBAで変更するやり方は、以下の記事を参考にして下さい。
アクセス小僧:VBAでクエリを変更
http://cheese999.blog.so-net.ne.jp/2017-08-16-1
ヤバイぜ! ありがとうございます[__猫]
by cheese999 (2017-12-12 09:47)