#216 フォームのテキストボックスを抽出条件とするクエリー フォーム、クエリー

開始日と終了日を入力する次のようなフォームがあったとします。
抽出条件を指定するフォームの例

このフォームで入力された開始日と終了日の期間の条件(2つのテキストボックスの値)を元に、クエリーでレコード抽出したいような場合には、クエリーの抽出条件を次のようにします。

クエリーのデザイン


ここでのポイントは、
Forms![フォーム名]![コントロール名]
という式です。この構文を使うことによって、クエリーからフォームのテキストボックスコントロールの値を参照することができます。もちろん、コントロール名のところはテキストボックスだけでなく、コンボボックスでもリストボックスでも、オプショングループでもOKです。

また、このようにして作ったクエリーは、当然ですが、フォームのレコードソースとしても使うこともできます。[OK]ボタンのクリック時イベントに、このクエリーをレコードソースとするフォームを開くマクロやイベントプロシージャを割り当てることによって、まず上図のような期間設定ダイアログを表示して、[OK]が押されたら、そこで指定された範囲のデータだけをフォームに一覧表示させるということが実現できます。


※このような方法を使った場合には、必ず抽出条件に指定したフォームが開いている必要があります。フォームが開いていない場合には、クエリーを開いたときに、次のようなダイアログが表示されます。
パラメータ入力ダイアログ
フォームが開いていないときは、フォームに変わってここでその値を指定することもできます。データベース開発途中では、そのような方法でクエリーの出来をチェックしてもよいでしょう。
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved