#394 | ページ範囲を指定して印刷するには? | レポート、VBA | |
データベースウィンドウ上からレポートを選択して、あるいはレポートをプレビューした状態で、[ファイル]-[印刷]メニューを実行すると、次のようなダイアログが表示されて、印刷するページ範囲を指定することができます。 ここでは、このようなAccess標準のダイアログによるページ指定ではなく、オリジナルフォームを使って印刷ページ範囲を指定する方法を紹介します。 まず次のようなフォームを作成します。このフォームで、印刷する開始ページ〜終了ページを指定します。それぞれのテキストボックスには、"txt開始ページ"、"txt終了ページ"という名前が付けられています。 さらに、[OK]ボタンのクリック時イベントプロシージャに次のようなコードを記述します。 Private Sub cmdOK_Click() '[OK]ボタンクリック時 Dim strRptName As String 'レポート名を設定 strRptName = "rpt受注" 'レポートをプレビューで開く DoCmd.OpenReport strRptName, acViewPreview 'レポートを指定ページ範囲で出力 DoCmd.PrintOut acPages, Me!txt開始ページ, Me!txt終了ページ 'レポートを閉じる DoCmd.Close acReport, strRptName End Sub ここでのポイントは、DoCmdオブジェクトの「PrintOut」メソッドです。このメソッドでは、現在アクティブになっているウィンドウをプリンタに出力します。直前に"rpt受注"レポートをプレビューで開いていますので、そのレポートが印刷されることになります。 さらにこのメソッドでは、最初に引数に組み込み定数「acPages」を指定した上で、第2引数で開始ページを、また第3引数で終了ページを指定することができます。 |
|||
|
Copyright © T'sWare All rights reserved |