本当に簡単なクエリだと思っていましたが、
ポイント
複数のテキストボックスの値に対して未入力(未選択)の場合には抽出(検索)対象にせずに、入力がある場合だけ値を対象にして抽出(検索)する
というクエリを作成しましたが思うように動いてくれません。
1つのテキストボックス(コンボボックス)ではOK
上の画像のように、1つの項目で
空(Null)の場合は、全てのデータを表示させて、入力値がある時は入力値で抽出
って事は簡単にできます。
2つ(複数)のテキストボックス(コンボボックス)ではNG
上の図のようにすると、
ココに注意
両方のテキストボックスに入力値が無いと抽出ができない
のです。
ちなみに、上の図ですが、一度クエリを実行してデザインモードにしたら、自動でNullの部分が分けられていました。
IIFで条件を付けて実行してもNG
一行で処理ができないかと上のようなIIF関数を使って抽出することにしました。
テキストボックスがNull(未入力)なら、Like "*" (すべてを抽出)しろって感じのコードです。
結論できには、すべて抽出ができません。
じゃ、Likeじゃなく、ダブルコーテーション「""」にしたり、「Null」にしてみたりしましたがダメでした。
サクッと作りたかったのですが、結局VBAでフィルターでもやった方が早いかな!?ってなりましたが・・・
行数を増やすことで問題解決
なるほど、
ココに注意
行数増えても、全部の組み合わせで記述すれば問題解決
するようです。
だがしかし、2項目程度ならいいけど、もっとあったら凄い行の増え方になりますね。
どうしよう・・・やっぱりVBAでコード書いた方が良さそうですね。