ACCESS2000で複数の条件を入力し、該当するデータを抽出するフォームを作成しています。どんな方法がありますか?簡単に出来る方法をお教えください。
具体的には、売上明細データを検索します。あらかじめ
テーブル:売上明細データ をいろいろなマスタを参照している
クエリ:売上明細クエリ を元に抽出します
条件は売上日付の日付1と日付2の項目と、伝票区分の項目です。
フォームの頭にテキストボックスを3つ作成し、日付1~日付2までの売上日付で
入力された伝票区分のもののみを表示させたいのです。
検索というコンボボタンを配置し、クリック時にその下にクエリからの必要な表示項目を売上明細クエリから配置しています。
抽出する方法(条件の与え方)を教えてください。よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
クエリの日付抽出条件欄に
Between Nz(Forms!フォーム名!日付1,#1900/1/1#) and Nz(Forms!フォーム名!日付2,#2900/12/31#)
伝票区分の抽出条件欄に
=Forms!フォーム名!伝票区分 or Forms!フォーム名!伝票区分 is null
ボタンでフォームを再クエリします
この回答への補足
実際記述していただいたとおり設定をしたところ抽出できました!
本当にありがとうございます。
ところで次の問題がでてきました。検索ボタンと検索解除ボタンを設定しているのです。クエリで条件指定した場合、その条件の取り消しはどうすればよいのでしょうか。マクロの全レコードの表示も効かないし、マクロでフォームの日付1・日付2・伝票区分に値は代入できませんよね。どうすれば条件解除できるのでしょうか?重ね重ねよろしくお願いいたします!すみません初歩的な質問で・・・
No.4
- 回答日時:
>Forms!フォーム名!日付1 is Null
これを代入したのですか?
これの値は日付1に何か入っているときにはFalseです
そうじゃなくNullを代入するのですよ
ありがとうございました。少し勘違いしていたようです・・・
無事解決しました。出来の悪い質問者ですみません!
本当にありがとうございました!これからもよろしくお願いいたします!
No.1
- 回答日時:
売上明細:
ID___売上日付______明細区分___伝票番号
1____2007/10/25_____________0___2007100001
2____2007/10/26_____________0___2007100002
3____2007/10/27_____________1___2007100003
売上明細 クエリ:
SELECT Month([売上日付]) AS 月次, *
FROM 売上明細
WHERE (((Month([売上日付]))=10));
Private Sub コマンド_抽出実行_Click()
Dim dteSHiduke As Date
Dim dteEHiduke As Date
Dim intKubun As Integer
Dim strWhere As String
dteSHiduke = Nz(Me.抽出開始日, "1999/12/31")
dteEHiduke = Nz(Me.抽出終了日, "1999/01/01")
intKubun = NZ(Me.抽出区分, 0)
If dteSHiduke <= dteEHiduke Then
strWhere = "明細区分=" & intKubun & _
" AND 売上日付>=#" & dteSHiduke & "# AND 売上日付<=#" & dteEHiduke & "#"
Me.RecordSource = "SELECT * FROM [売上明細 クエリ] WHERE " & strWhere
Me.Requery
Else
MsgBox "抽出する日付が定かではありませんので中止します!"
End If
End Sub
・・・・・
If dteSHiduke <= dteEHiduke Then
Me.FilterOn = False
Me.Filter = "明細区分=" & intKubun & _
" AND 売上日付 BETWEEN #" & dteSHiduke & "# AND #" & dteEHiduke & "#"
Me.FilterOn = True
Else
・・・・・
どっちでもOKです。
ただし、もしかしたら、ネットワークが混雑しないのは後者かもです。
いつもご丁寧な回答ありがとうございます!!
只今VBA特訓中で、とっても参考になりました。Private Sub以降の記述を何とか読解中です!でもSQLがまだこれからと言うところなので、十分に理解が出来てはいませんが、少しつかめてきたと思います。本当に詳しく解説いただき感謝感激です!これからもよろしくお願いします!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Access(アクセス) access レポート 請求書について 2 2022/07/04 22:52
- Excel(エクセル) エクセルで対象日に該当するデータがある場合に別表へ全対象者を表示させたい。 3 2023/07/12 09:48
- Excel(エクセル) エクセルで重複データを行ごとに抽出したい 4 2022/12/05 08:18
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「24日の0時」って・・・
-
差し込み印刷に当日の日付が入...
-
「時間」、「期日」、「日付」...
-
日付の大小の表現
-
エクセル マクロ 名前を付けて...
-
パソコンで購入したデーターが...
-
回覧板の日付について質問です...
-
EXCELで日付を****年上期、****...
-
履歴書の日付間違いで落ちますか。
-
Excelでヘッダに前日の日付を表...
-
スクリーンショットで撮影する...
-
ワードの日付け自動入力のキャ...
-
エクセルで日付け表示で、明治...
-
日付以外のデータを抽出したい...
-
ピボットテーブルの日付フィル...
-
Access VBA SQL文で教えてください
-
WEEKDAYが反映されない
-
PDFファイルに日付を名前にして...
-
PCの日付が起動のたびにリセ...
-
エクセル マクロで指定日にメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「24日の0時」って・・・
-
パソコンで購入したデーターが...
-
「時間」、「期日」、「日付」...
-
日付の大小の表現
-
差し込み印刷に当日の日付が入...
-
回覧板の日付について質問です...
-
エクセル マクロ 名前を付けて...
-
TODAY関数から次の火曜もしくは...
-
エクセルで日付別にシートを分...
-
Excelについて
-
スプレッドシートで使う数式を...
-
エクセルで日付け表示で、明治...
-
履歴書の日付間違いで落ちますか。
-
Excelでヘッダに前日の日付を表...
-
ACCESSで1月1日~12月31日まで...
-
ACCESSで日付ごとに自動連番(...
-
エクセルで6ヵ月後を自動入力で...
-
2つの日付の中間の日付 エク...
-
差込印刷 縦書きで和暦(漢数...
-
EXCELで日付を****年上期、****...
おすすめ情報