• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESS期間抽出について)

ACCESS期間抽出について

このQ&Aのポイント
  • ACCESS2002で請求書を作っています。売り上げデータから2005年3月1日~2005年3月31日までを抽出して請求書を印刷したところ、3月4日~9日だけ抽出できませんでした。
  • 請求書印刷フォームに、開始年、月、日と終了年、月、日というテキストボックスを作って抽出して、レポートに印刷するようにしています。
  • 3日から9日だけ出ないという原因がわからないので、教えていただけませんでしょうか?

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

  • ベストアンサー
  • yoko3333
  • ベストアンサー率35% (47/134)
回答No.2

#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-請求書印刷]![日終])

kikochama
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yoko3333
  • ベストアンサー率35% (47/134)
回答No.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-請求書印刷]![日終])

kikochama
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • フォームからクエリの抽出期間を指定するにあたって

    フォームのテキストボックス(開始日付,終了日付)に入力された期間内の レコードをクエリで抽出するために、以下のような抽出条件を設定しています。 Between [Forms]![フォーム1]![from date] And [Forms]![フォーム1]![終了日付] ここまでは問題なく出来ています。 ですが、例えばテキストボックスに何も入力していないときに、 全ての期間から全件表示させるような方法はありませんでしょうか? IIf(IsNull([Forms]![フォーム1]![開始日付]),True,~ というような形で、IIfとIsNullの組み合わせも考えたのですが、 日付は直接フィールドでは無く抽出条件のため、 Trueより後が設定できずに悩んでおります。 出来ればVBAは使いたくないのですが、 何か良い方法はありませんでしょうか?

  • アクセスで期間抽出

    お尋ねします アクセスで納品書のデータベースがあります   納品書データFormには 伝票番号、日付、客先名、数量のフィールドのフォームで テキストボックス1:始めの日 テキストボックス2:終了日 コマンドボタン1:期間で抽出 が配置しています テキストボックス1,2に日付、記入後、コマンドボタン1をクリックして 所要期間でフィルターで抽出するのですがうまく行きません コマンドボタン1クリック時のコード Private Sub コマンド1_Click() Me.Filter = "日付= 'Between" & Me![テキスト1] & "And" & Me![テキスト2] & "'" Me.FilterOn = True End Sub のコードで抽出してくれません、不都合をご指摘下さい なお 指定日での抽出は以下で出来ました。 Private Sub コマンド1_Click()  Me.Filter = "日付= '" & Me![テキスト1] & "'" Me.FilterOn = True End Sub エクセルのモジュールは少しかじったのですがアクセスは 始めたばかりでなかなか要領を得ません 宜しくお教え下さい。

  • 初心者用、日付検索でデータを抽出

    初心者用、日付検索でデータを抽出 いろいろWEBを検索してやり方を探しましたがあまりに初心者過ぎて試しても うまく動きません、 やりたいことは、 アクセス 2007を使用して下記のようなクエリから Qデータ (クエリ) 入力日 日付型 あああ テキスト型 いいい テキスト型 ううう テキスト型 開始日 日付型 終了日 日付型 終了日を入力して、(例2010年3月10日から2010年3月20日)までの あああ、いいい、うううの結果を抽出したいです、フォームを使って 一番簡単にできそうなやり方教えてください。 ・ACCESS簡単な使用法、accessクラブ、アクセス初心者入門などなど  見つくしましたが、理解できずで困っています。 どうぞ、よろしくお願いいたします。

  • Accessのクエリデザインで条件抽出のテキストボックス

    アクセス初心者です。 既に作成済みのクエリを実行する時、いつも「開始日」と「終了日」を入力するテキストボックスが 出てきていました。 例えば開始日のボックスに2009/04/01を入力してEnterを押すと次に終了日を入力する ボックスが出てきて2009/05/31と入力して実行するとそのデータベースのその日付の期間の データが抽出されるようになっていました。 あるとき必要がありそのクエリのデザインを開き別のテーブルの抽出条件を追加したり していたときに、その日付(登録日時というテーブル)の部分の抽出条件を消してしまいました。 元通りにしたいのですが、どのような式が入力されていたのかわかりません。 私なりに調べてみて、テキストボックスは表示されないのですが、クエリのデザインを 開いている状態でそこに 「Between #2009/04/01# And #2009/05/31#」などと日付を入力すればできることは わかったのですが、テキストボックスが表示されるように元通りにすることはわかりませんでした。 お分かりになる方、教えてください。

  • Access クエリ抽出条件の「Between」の記述で

    こんにちは。Access2000を使用しています。 「抽出条件」フォーム上のテキストボックス "txt開始コード"と"txt終了コード"の入力条件を 「抽出」選択クエリの抽出条件として Between [forms]![抽出条件][txt開始コード] And [forms]![抽出条件][txt終了コード] 記述しました。 抽出条件は「業務データ」テーブルの"業務コード" に対応しており、「業務コード」はテキスト型長さ4 で定義してありますが、「0000」~「9999」の数値 が格納されています。また、フォーム上のテキストボックスの書式は「0000」としています。 条件を何も入力しない時はデータを抽出しますが、条件 を指定すると何も抽出されなくなってしまいます。条件 の指定を、 Between '[forms]![抽出条件][txt開始コード]' And '[forms]![抽出条件][txt終了コード]' のようにシングルクォーテーションで囲んでもうまくいき ません。文字列なのに数値が入っているのでアクセス側で 自動認識しうまくいかないのか、検討がつきません。 どなたか解決策をお願いいたします。

  • ACCESS2003 追加クエリの条件設定について

    ACCESS2003 追加クエリの条件設定について 条件設定用のフォーム"A"があり、 その"A"で指定された条件を元にテーブル"B"から値を抽出し、 テーブル"C"に書き込む追加クエリを作成しています。 フォーム"A"には ・「対象日」フィールド ・「月で出力」チェックボックス テーブル"B"には ・「試験開始日」 ・「試験終了日」 ・他多数項目フィールド 追加クエリではフォーム"A"の情報を元に、テーブル"B"から 「試験開始日」:<=[Forms]![F_A]![試験開始日] 「試験終了日」:>=[Forms]![F_A]![試験開始日] と、月をまたがって実施される試験が殆どのため、「対象日」に入力された日付を 網羅するデータを取り出しています。 新たに作りたいのは、フォーム"A"の「月で出力」チェックボックスにチェックがついた 時に、フォーム"A"の「対象日」フィールドから月を取り出し、テーブル"B"の「試験開始日」 「試験終了日」それぞれで月を比較し、同じ月のデータを抽出したいのですが 追加クエリの抽出条件に下記の通り記述した所、データをヒットさせる事が出来ません。 試験開始日フィールドの抽出条件 IIf([Forms]![F_A]![月で出力]=True,Year([試験開始日])=Year([Forms][F_A]![対象日]) And Month([試験開始日])=Month([Forms]![F_A]![対象日]),[試験開始日]<=[Forms]![F_A]![対象日]) 試験終了日フィールドの抽出条件 IIf([Forms]![F_A]![月で出力]=True,Year([試験終了日])=Year([Forms][F_A]![対象日]) And Month([試験終了日])=Month([Forms]![F_A]![対象日]),[試験終了日]>=[Forms]![F_A]![対象日]) どこが問題なのでしょうか… どなたかご教授お願い致します。

  • 日付・時刻型の条件抽出方法について教えてください。

    1.accessで日付・時刻型(yyyy/mm/dd hh:nn:ss)のデータを持つフィールドから、between関数or<>の式で期間を抽出する。 2.[開始日]と[終了日]をパラメータorフォームのテキストボックスに入力して、期間抽出する。 3.[開始日]、[終了日]は日付のみ入力したい(yyyy/mm/dd)。 4.その際、[終了日]は入力した日付の00:00:00を持つレコードしか抽出されず、同日で以降の時間を持つレコードは抽出外になってしまう。 という問題を抱えています。 [終了日]に"+1"を加えたのですが、"式を評価することができません"が返ってきます。 上記を解決できる方法ご存知の方、教えていただけますでしょうか? よろしくお願いします。

  • Access 2003 締日の表示

    ACCESS 2003にて請求書を作成しております。 クエリにて フィールド:日付 抽出条件:between [開始日] and [終了日] と設定しております。 レポートに請求日があり、[終了日]を表示させたいのですがうまくいきません。20日締切の場合、例えば、平成23年12月20日とレポートに表示させたいのですがどのようにすればよいでしょうか。 [日付]を配置すると一番最初の売り上げの日付が表示されてしまいます。 出来れば、抽出条件に入力した[終了日]を表示させたいです。お客様により、20締めと月末締めがあるためです。

  • (access )任意の数字以上でクエリ抽出したい

    フォーム上にテキストボックスと、サブフォームのクエリを配置しております テキストボックス(textbox1)に数字を入力し、その数字以上のフィールドを抽出したいのですが、上手く行きません 現在クエリの抽出条件に以下の式を入力していますが、レコードが一切表示されません。 (抽出はできますが) >=([Forms]![フォーム名]![textbox1]) どなたかご教授お願い致します

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

    「作表条件」というフォームにテキストボックスとして「日付1」、「日付2」を設置しています。 元のテーブルには「日付」という項目があり、「日付1」から「日付2」までのデータを抽出するため、 クエリの条件式に Between Nz([Forms]![作表条件]![日付1],#1800/01/01#) And Nz([Forms]![作表条件]![日付2],#9999/12/31#) と記述しています。 ただ、元のテーブルの日付がNULL値の場合があり、その場合「日付1」および「日付2」が空欄だとNULL値のレコードが抽出されません。 「日付」がNULLの場合でも抽出できるようにするには、どのようにすればよいでしょうか? どなたか教えてください。

このQ&Aのポイント
  • プリンターの印刷がかすれて困っている。クリーニングを自動でやる操作を行っても全く変わらずかすれて印刷されてくる。修理に出す前に何か他の解決策はあるか教えてほしい。
  • プリンターの機種はキヤノンのインクカートリッジタイプのもので、TS5030Sである。
  • プリンターの印刷がかすれて困っている件。うつくしくないので、困ってしまう。他に修理以外の解決策があれば、教えてほしい。
回答を見る