• 締切済み

Accessで簡単にフィルターをかけるには?

Accessでクエリーのbetween関数でフィルターをかけていますが、日にちの範囲を任意に指定して抽出できるフォームは出来るのでしょうか?

  • gara
  • お礼率57% (96/166)

みんなの回答

  • mnabe
  • ベストアンサー率33% (427/1283)
回答No.1

出来ます。  任意の範囲ってのがちょっと曖昧で解らないのですが、 フォームから二つの日付を入力して、その入力された日付をクエリーに渡して、フォームに表示したいって事なら、そのクエリーの変数に日付を入れてあげる処理を作ればいいし、面倒なら、SQL文を発行しても良いと思います。  まずは、どういった操作で入力は何があって、どういった操作で結果を出したのかを明確に書いて下さい。

gara
質問者

補足

わかりにくい質問ですみませんでした。 具体的にはある品物の1999/12/28から2000/2/10までの使用量を知りたいというような場合、今まではクエリーのデザインビューに入りbetween関数の日にちを変えて結果を見ていました。そこでその日にちの範囲をフォームビューで入力して抽出した結果を知りたい。ということなのですが フィールドには品物の使用日、使用量が入っています。 出来れば具体的な方法(SQLでも)を知りたいのですがよろしくお願いします。

関連するQ&A

  • Accessのフィルタについて

    Access2000を使っています。 フォームに配置した「TextBox1」と「TextBox2」(両者とも日付/時刻型)を引数として指定範囲の抽出をすべく Me.Filter="検索結果 Between #"& TextBox1 &"# And #"& TextBox2 &"#" Me.FilterOn=True (「検索結果」はテーブルに配置したフィールドに連結) のコードをボタンのクリックイベントに設定しました。 ところが、例えば「TextBox1」に「01/02/03」、また、「TextBox2」に「01/05/04」を入力して、ボタンをクリックしても抽出されません。 フォームに戻って、フォームのプロパティで確認するとフィルタの欄に 「検索結果 Between #01/02/03# And #01/05/04#」と表示されておりコードに間違いはないと思われますが、フォームフィルタをかけてみると、検索結果のテキストボックスに「Between #03/01/02# And #04/01/05#」という具合に日付が「日/年/月」に置き変わって表示されています。これがコードを実行しても抽出されない原因だと思われるのですか、何故、このように日付が変わってしまうのでしょうか。また、どうすれば変わらないようにできるのでしょうか。 よろしくお願いします。

  • ACCESSの時間帯の抽出について

    between関数を使って、 クエリーで、テーブル上のとある任意の時間帯が記載された列について、 5:00から19:00を抽出したい、 5:00から25:00を抽出したい、 また上記がテキストだった場合も、 500から1900を抽出したい といった条件は簡単にできますか? アクセスマスターには優しい内容とおもいますが。

  • アクセスのフィルタについて

    アクセスのフォーム[フォーム1]にフィルタをかける処理についてですが、入力欄の一つ[データ1]に値が入力されていないものだけを抽出する処理をマクロで行いたいと思っておりますが、上手くいきません。(何も抽出されない) フィルタの命令文を下記で書いておりますが、間違っているでしょうか。 Forms![フォーム1]![データ1] = Null

  • Accessのフォームで・・・

    今日、職場で質問をされたのですが・・・。Accessのクエリでフォームを参照してデータを抽出すると言うのは可能でしょうか?または、Between演算子をフォームのテキストボックスに入力し、データを抽出することは可能でしょうか。

  • Accessのサブフォームからフォームフィルタを使ってメインフォームも含めたレコードの抽出が出来ないのは何故でしょうか?

    フォームフィルタを利用してサブフォームに入力されている値でレコードの抽出を行いたいのですが、うまくできません。 メインフォームが持っているレコード全てを持ってきます。 メインフォームに含まれているデータが100件なら、それ全てを表示してしまうということです。 私が抽出したいレコードは2件だけです。 メインフォームからフォームフィルタを利用して抽出すると正しい結果が得られます。 これはどうしてでしょうか? サブフォームへの設定が何か足りないのでしょうか? 親・子のフォームのテーブルは同一のものです。 カテゴリーで親と子にフォームを分けました。 親にはクエリはなくて、リレーションシップしたテーブル数種から直接フォームにひっぱってあります。 子は一つのテーブルからクエリを作って、そのクエリからフォームに引っ張っています。 Access2003です。 どなたかご教示いただきますようお願いいたします。

  • アクセス カッコをフィルタしたい

    アクセスのテーブルでデータにカッコがはいってるのですが それをフィルタで抽出しようとするとエラーになります。 例えば、タイトルフィールドに 「映画名(邦画)」が入ってる場合、 右クリック→テキストフィルタを押すと 「ユーザー設定フィルター」が出てきて、 タイトルが次の値で終わる:の所に「)」を入れると、 「正しい値を入力してください」とメッセージが出てしまいます。 (邦画)を入れても同じエラーです。 「指定の値を含む」にして、「邦画」と入れれば問題なく抽出できるのですが、 カッコを抽出したい場合どうすればいいのでしょうか? クエリで WHERE (((T_test. タイトル) Like "*)")); とするしかないのでしょうか? できれば直接テーブルでフィルタがかけられるようにしたいです

  • アクセスについて困っています。

    アクセス超初心者です。 フォーム上での期間検索(3/21~4/01)についてですが、 フォーム上でマクロを使い再クエリさせて実行させて行く方法が良いのか、 VBAを使いフィルタをかけて抽出していく方法が良いのか良くわかりません。 どなたか、この違いについて教えていただけませんか?

  • ACCESSの選択フィルタ

    こんにちはtmgmです。 ACCESSをつかっていてふと思ったんですが、テーブルを見るときに選択フィルタってありますよね。自分の見たいデータだけを絞り込んでいけるのは非常に便利なんですが、何段階も抽出をかけていった後に誤って一つ間違った抽出を今かけてしまったというようなとき、その間違えた抽出だけをとりのぞくってことはできないんでしょうか?漏斗のようなマークを押すと、フィルタは全解除されてしまいますよね?要はそれをいくつ目の抽出を、もしくは最新の抽出のみ解除みたいなことはできますかということです。ご返答お願いします。(ちなみにクエリのことは考えないと仮定した場合です)

  • アクセスのマクロについて質問です。

    お世話になります。 フォームに2つの日付を入力すことで あらかじめ抽出条件(between andの関数) を入れたクエリを実行して その結果の値を同フォームに表示したいのですが マクロがわかりません。 よろしくお願いします。    

  • accessで対象データの抽出を行うクエリを作成しています。データ範囲

    accessで対象データの抽出を行うクエリを作成しています。データ範囲 0~1000 等で抽出したいのですが、元のデータは、 01 、 854、 0854 、0001 等、まちまちであり、 between 0 and 1000で指定すると、01 や 854 が抽出されません。 どのようにしたらよいでしょうか?  あるいは元のデータの桁を4桁にあわせればよいと思うのですが、どのようにして4桁に合わせればよいのでしょうか?  よい方法を教えていただきたいです。

専門家に質問してみよう