Open Reportメソッドの基本構文と引数の解説

Access VBA における DoCmd.OpenReport メソッドは、指定したレポート(帳票)を開いたり印刷したりするために使用します。特定の条件でレポートを表示したり、ダイアログ表示や直接印刷することも可能です。


目次

🔹 基本構文

DoCmd.OpenReport(ReportName, View, FilterName, WhereCondition, WindowMode, OpenArgs)

🔸 引数の解説

引数名説明
ReportNameString開くレポートの名前(必須)
ViewAcView表示モード(例: プレビュー、印刷)
FilterNameString保存されたクエリ名を使ってフィルターを適用(省略可)
WhereConditionStringレコードの絞り込みに使う WHERE 条件(省略可)
WindowModeAcWindowModeレポートのウィンドウ表示モード(省略可)
OpenArgsVariantレポートに渡す引数(OpenArgs プロパティで取得可)

🔹 列挙型の値

AcView(表示モード)

説明
acViewPreview印刷プレビューで表示(既定)
acViewReportレポートビューで表示(スクロールや選択可)
acViewDesignデザインビューで表示(UI 編集用)
acViewPrint直接印刷(表示せずプリンターに送信)

AcWindowMode(ウィンドウモード)

説明
acWindowNormal通常のウィンドウ(既定)
acHidden非表示で開く
acIconアイコン表示で開く(古いスタイル)
acDialogモーダル表示で開く(他の操作をブロック)

🔸 使用例

✅ レポートを印刷プレビューで開く

DoCmd.OpenReport "rptSalesSummary", acViewPreview

✅ 条件付きでレポートを表示

DoCmd.OpenReport "rptOrders", acViewPreview, , "CustomerID=123"

✅ 印刷(画面に表示せず直接プリンターへ送信)

DoCmd.OpenReport "rptInvoice", acViewPrint

✅ OpenArgs を使って引数を渡す

DoCmd.OpenReport "rptDetail", acViewPreview, , , , "OrderID=456"

レポートの Open イベントなどで Me.OpenArgs により取得可能。


✅ 補足

  • レポートで条件を絞るときは WhereCondition を使うのが一般的。
  • OpenArgs は複数の条件を動的に渡す場面で便利。
  • レポートは編集できないビューです。閲覧・印刷用途に特化しています。

よかったらシェアしてね!
目次