こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ACCESS期間抽出について

ACCESS2002で請求書を作っています。
売り上げデータから2005年3月1日~2005年3月31日までを抽出して請求書を印刷したところ、3月4日~9日だけ抽出できませんでした。
そのデータを3月3日や10日に訂正すると抽出されるのです。
請求書印刷フォームに、開始年、月、日と終了年、月、日というテキストボックスを作って抽出して、レポートに印刷するようにしています。

クエリーで、年月: Year([日付]) & Month([日付]) & Day([日付])という項目で次のように抽出条件を入れています。

Between [Forms]![F-請求書印刷]![年] & [Forms]![F-請求書印刷]![月] & [Forms]![F-請求書印刷]![日] And [Forms]![F-請求書印刷]![年終] & [Forms]![F-請求書印刷]![月終] & [Forms]![F-請求書印刷]![日終]

開始日と終了日だけのテキストボックスにしないで、年、月、日と分けているのは、レポートでそれぞれ値の代入で使用するためです。

3日から9日だけ出ないという原因がわからないので、教えていただけませんでしょうか?
よろしくお願いいたします。

投稿日時 - 2005-04-06 14:31:09

QNo.1314931

暇なときに回答ください

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

#1です。
すみません、あちこちミスってました・・・。

---------- 月と日を2桁で扱う ----------
年月: Year([日付]) & Format(Month([日付]),"00") & Format(Day([日付]),"00")

Between [Forms]![F-請求書印刷]![年] & Format([Forms]![F-請求書印刷]![月],"00") & Format([Forms]![F-請求書印刷]![日],"00") And [Forms]![F-請求書印刷]![年終] & Format([Forms]![F-請求書印刷]![月終],"00") & Format([Forms]![F-請求書印刷]![日終],"00")

---------- 検索条件を日付に直す ----------
年月: 日付

Between cdate([Forms]![F-請求書印刷]![年] & "/" & [Forms]![F-請求書印刷]![月] & "/" & [Forms]![F-請求書印刷]![日]) And cdate([Forms]![F-請求書印刷]![年終] & "/" & [Forms]![F-請求書印刷]![月終] & "/" & [Forms]![F-請求書印刷]![日終])

投稿日時 - 2005-04-06 14:54:51

お礼

ありがとうございます。
月と日を2桁で扱う方法でやりました。
Formatにしてやってうまくいきました。
すぐに教えていただき本当に感謝感激です。
ありがとうございました。

投稿日時 - 2005-04-06 15:09:05

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

> クエリーで、年月: Year([日付]) & Month([日付]) & Day([日付])という項目で次のように
> 抽出条件を入れています。

これでは、例えば 2005/3/9 は「200539」という文字列になってしまいます。
検索条件の方は「200531 ~ 2005331」という文字列ですので、これを単純に小さい方から
ならべると

200531
2005331
200539

という順番になってしまいます。なので「2005/3/9」は検索条件の範囲に入りません。

解決方法は、月と日を2桁で扱うか、検索条件を日付に直すか、どちらかになります。

---------- 月と日を2桁で扱う ----------
年月: Year([日付]) & Fromat(Month([日付]),"00") & Fromat(Day([日付]),"00")

Between [Forms]![F-請求書印刷]![年] & Fromat([Forms]![F-請求書印刷]![月],"00") & Fromat([Forms]![F-請求書印刷]![日],"00") And [Forms]![F-請求書印刷]![年終] & Fromat([Forms]![F-請求書印刷]![月終],"00") & Fromat([Forms]![F-請求書印刷]![日終],"00")

---------- 検索条件を日付に直す ----------

年月: 日付

Between cdate([Forms]![F-請求書印刷]![年] & "/" & [Forms]![F-請求書印刷]![月] & "/" & Fromat([Forms]![F-請求書印刷]![日]) And cdate([Forms]![F-請求書印刷]![年終] & "/" & [Forms]![F-請求書印刷]![月終] & "/" & Fromat([Forms]![F-請求書印刷]![日終])

投稿日時 - 2005-04-06 14:50:39

お礼

早々に教えていただきありがとうございました。
なるほど、すごくよくわかりました。
ばっちりうまくいきました。うれしいです。
ありがとうございました。

投稿日時 - 2005-04-06 15:05:31

あなたにオススメの質問