• ベストアンサー

クエリーの抽出条件について

アクセス97を使っているんですが、クエリーの抽出条件についてどうしてもわからないことがあるので出来ましたらお教え願いたいんですが。 フォーム上でトグル(スイッチ)がオンの場合だけクエリーの抽出条件で検索をかけたいと思っています。 フォームでトグル(スイッチ)がオフの場合は抽出条件なしで全データを抽出したいんです。 複数のクエリーを使えば何とかなるとは思いますがなんか見栄えによくないような気もしますし、たくさんクエリーが必要になってしまいます(スイッチをたくさん使う予定なので)。 もし、抽出条件をきる方法をご存知の方がおられましたら、お教えください。

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

  • ベストアンサー
  • kumosuke
  • ベストアンサー率45% (33/73)
回答No.2

以下の方法でできると思います。 が…… トグルが多ければ多いほど、式が多くなってしまう、かと。 とりあえず、クエリーを作成し、抽出をするテーブルのフィールドを追加しておきます。 (ここで、フィールドに抽出条件を設けるのではないので、注意してください) ご存知とは思いますが、並び替えをしたいのなら、それぞれのフィールドに昇順・降順を設定します。 さて、問題のチェックボックスによる全件抽出の仕方ですが。 IIf([フォームのトグル名]=0,True,[テーブルの対象となるフィールド名]=[フォームの対象となるテキストボックス(?)名]) 以上の式を、クエリーのフィールドに記入してやります。 そして、抽出条件に"True"を記述。 なお、[フォームのトグル名]=0 とはトグルがオフのときの規定値(押される前)としていますので、その辺の設定はご自分でどうぞ。 これでできるはずです。 ではでは。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

チェックボックスの名前をchkFilterSwitchとして、イベントchkFilterSwitch_Changeで、 a)チェックされていたら、フォームの属性Filterに抽出条件を設定。 b)チェックされてなければ、Filterを解除する。 ――という処理を記述するってのは。 詳しくは、それぞれのヘルプをどうぞ。