• ベストアンサー
  • すぐに回答を!

Access レポート作成時のフィルタのかけ方

Microsoft Accessでテーブルからレポートを作製する際のフィルターのかけ方がわかりません。 VBAにて DoCmd.OpenReport "領収記録", acPreview, , 領収日付 >= Forms!f_入力!開始日.Value, acWindowNormal を使用しており、「領収日付」は「領収記録」のフィールドの一つです。 フォーム「f_入力」のテキストボックス「開始日」で指定した日付以降のレコードのみを表示させたいのですが、 フィルタがかからず全レコードが表示されてしまいます。 「領収日付」、「開始日」共にデータ型は日付型です。 よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数4306
  • ありがとう数3

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

  • ベストアンサー
  • 回答No.1

以下では? DoCmd.OpenReport "領収記録", acPreview, , "[領収日付] >=#" & Me!開始日 & "#"

共感・感謝の気持ちを伝えよう!

質問者からのお礼

表記の通りに入力したところ、フィルタをかけることができました。 ありがとうございました。

関連するQ&A

  • Accessでレポートの項目をVBAで変更したい

    Accessのレポートで年次集計を項目が可変になるため、VBAで書き換えるようにしたのですが、うまく出来ません。 お心当たりのかたいらっしゃいましたら教えて頂けないでしょうか。 フォームの概要(売上集計)     OO年 OO年 OO年 商品A 1,000 2,000 3,000  商品B 1,500 2,500 3,500 商品C 2,500 3,500 4,500 ※年は可変です 次のようにするとフォームが開いていないと言ったエラーが出ます。 stDocName = "年別売上集計レポート" Reports(stDocName).ラベル1.Caption = cstr(Year) + "年" DoCmd.OpenReport stDocName, acPreview, "", [フィルタ] 又次のようにするとエラーは出ませんが、ラベルは書き換わりません。 stDocName = "年別売上集計レポート" DoCmd.OpenReport stDocName, acHidden, "", [フィルタ] Reports(stDocName).ラベル1.Caption = cstr(Year) + "年" DoCmd.OpenReport stDocName, acPreview, "", [フィルタ]

  • Access 複数条件のフィルタ

    フォーム[F_MENU]に非連結のテキストボックス検索用A~Cで3つあります。 検索用A 検索用B 検索用C AかつBかつCという全件一致でフィルターをかけてフォーム[詳細]を開きたいのですが DoCmd.OpenForm "F_詳細", , , "A = '" & Forms!F_MENU!検索用A & "'" And "B = '" & Forms!F_MENU!検索用B & "'" And "C = '" & Forms!F_MENU!検索用C & "'" とやると、実行時エラー'13':型が一致しません。 と出てしまいます。 Aだけ、Bだけ、Cだけ、それぞれひとつずつ書けば、エラーなく結果が得られます。 DoCmd.OpenForm "F_詳細", , , "A = '" & Forms!F_MENU!検索用A & "'" DoCmd.OpenForm "F_詳細", , , "B = '" & Forms!F_MENU!検索用B & "'" DoCmd.OpenForm "F_詳細", , , "C = '" & Forms!F_MENU!検索用C & "'" おそらくANDの使い方が誤っていると思うのですが、添削お願いいたします。 全てのテキストボックス及び元テーブルのデータ型はテキスト型です。 条件は3つとも完全一致のみで、検索用ABC、F_詳細のABCそれぞれのカラムにNULL値はありません。 よろしくお願いします。

  • Accessのレポート印刷について教えて下さい。

    Accessのフォームでフィルタを使い絞り込んだデータをレポートで 印刷する場合について教えて下さい。 DoCmd.OpenReport "レポート名", acViewPreview, , Me.Filter では、フォームとレポートが同じレコードソースだと使えるという事ですが、 フォームとレポートのレコードソースが別の場合はどのようにすると フィルタで絞り込んだ条件のレポートを印刷できますか? 教えて下さい。よろしくお願いします。

  • accessレポートの抽出条件

    こんにちわ。 いまaccess2000で, フォームからレポートを出力する処理をしています。 そのレポートは[コントロールソース]としてあるクエリを設定しています。 そこで, DoCmd.OpenReport "r_帳票", acPreview, , "[番号] = 'a100'" とコーディングしました。 なおレポートの[フィルタ]プロパティは"はい"にしています。 ところが,出力されたレポートには条件で抽出されずに 全件が出力されてしまいました。 抽出条件を効かせるためにはどうすれば良いでしょうか? 教えてください。お願いします。

  • AccessVBA フィルタとカレントレコードの移動について

    現在、下記のような構文で、「フィルタ」というテキストボックスに文字を入力し、「フィルタ実行」というボタンを押すと、フィルタがかかるように作っています。 ---------------------------------- Private Sub フィルタ実行_Click() Me.Filter = "故障処理票番号 like '" & Me!フィルタ & "'" Me.FilterOn = True End Sub ---------------------------------- ※故障処理票番号のデータ型はテキスト型。 頭にアルファベット2文字と4桁の数字からできています。例:AA0001 ※フォームは表形式。 2つ質問があります。 1)テキストボックスに入力した値で始まる文字をすべてフィルタで抽出する方法。 つまり、"AA"で始まる番号をすべて検索したい場合に、テキストボックスに"*"を入力することなく、結果が返る方法を教えてください。 2)フィルタで抽出したレコードをカレントレコードにする方法。 複数あった場合には、レコードセレクタで選択したレコードをカレントレコードとする方法を教えてください。 (ボタンを押すと、カレントレコードとなっているレコードの詳細表示(単票フォーム)に飛ぶように設定しているので、カレントレコードを移動する必要があります。ボタンは詳細セクションのそれぞれのレコードの横に表示されるよう作成しています) VBA独学&初心者なので、多分、初歩的な質問なんだと思います。どうぞよろしくお願いします!!

  • Access2003のフォームからレポートに変数を渡したいのです。

    Access2003のフォームからレポートに変数を渡したいのです。 フォームに「結果」という名前の非連結コンボボックスがあり、値集合ソースは、「"承認";"却下";"保留"」です。 フォームの印刷ボタンはクリック時のイベントに以下を設定しています。 DoCmd.OpenReport ("R_レポート名"), acViewPreview このレポートでテキストボックスに「結果」の内容を表示させたいと思います。 テキストボックスのコントロールソースに、「=[Forms]![F_フォーム名]![結果]」と入れてみましたがエラーになります。 フォームのコンボボックスの値をレポートで表示させるにはどうすれば良いのでしょうか。 ご教示ください。よろしくお願いいたします。

  • Accessにて24時を越えた場合の表示

    Accessのフォーム上で開始時間1というテキストボックスと終了時間1というテキストボックスがあります。 データ型は日付・時刻型です。 24時間表記で終了時間が26時の場合は2時と入力しています。 入力する際はそれで構わないのですが、 それをレポートとして印字する時に26時と印字されるようにはならないでしょうか? 開始時間1と終了時間1を比べて開始時間1のほうが大きければ終了時間1は24足した数字を表示したいのですが、うまく書けません。 よろしくお願いします

  • アクセス2007 フォームフィルターをレポートにも

    アクセス2007 フォームフィルターをレポートにも フォームA---「家」データ        「家ID」 佐藤さん、斎藤さん、住所、電話等 フォームB---「家族内」データ        各家の家族構成 お父さんの誕生日、お母さんの誕生日などなど「家ID」有り フォームBでフィルターをかけ、「家ID」を元にフォームAで該当するデータを表示させています。 ----------------------------------------------------   Set rs = Forms.フォームB.RecordsetClone   Do Until rs.EOF     フィルタ = フィルタ & "," & rs!家ID rs.MoveNext Loop rs.Close   フィルタ = "家ID IN (" & Mid$(フィルタ, 2) & ")"   DoCmd.OpenForm "フォームA", WhereCondition:=フィルタ, ---------------------------------------------------- ※フィルタは255文字を超える場合有り このフォームAを元に レポートC(はがき宛先)で DoCmd.OpenReport "レポートC", acViewPreview, WhereCondition:=フィルタ(または、forms.フォームA.Filter) とすると「フィルターが長い」とエラーになります。 OpenFormでのWhereCondition:=は長くても受け付けますが、OpenReportの方は受付ないみたいです。 リレーションの知識不足のまま、進めてきたシッペ返しが今きているのですが、 こんな場合どうしたらフォームの検索条件をレポートに反映できるでしょうか?

  • ACCESSフォームフィルタで抽出したデータのみをレポートで表示する方法

    フォームフィルターでデータを抽出した後,抽出されたデータのみをレポート上に表示させるコマンドボタンをフォーム上に作っています。 下記のコードを作成しましたが,これだと抽出前の全部のデータが表示されてしまいます。 どうしたら良いでしょうか。 Private Sub ラベルプレビュー_Click() Dim stDocName As String DoCmd.Echo False, stDocName = "rpt宛名ラベル" DoCmd.OpenReport stDocName, acViewDesign DoCmd.SelectObject acReport, stDocName, False ' Reports(stDocName).RecordSource = Me.RecordSource DoCmd.OpenReport stDocName, acViewPreview End Sub

  • Accessであいまい検索するフォームをつくってみたんですが?

    Accessの初心者です。 本などをみながらあいまい検索ができるようなフォームをつくってみましたがフォームを開いた時、全レコードが表示されてしまいます。 クエリーの抽出条件はLike "*" & Forms!フォーム1!テキスト0 & "*"にしてテキストボックスプロパティの更新後処理でDoCmd.Requeryとしました。(意味がよくわからないんですけど) フォームを開いた時やテキストボックスになにも入力されていない時、全レコードが表示されないようにするにはどうすればいいのでしょうか? よろしくお願いします。