印刷ダイアログボックスや印刷プレビューを表示するマクロ~Excel VBA 3行マクロ~

印刷ダイアログボックスを表示するマクロ

ワークシートやアクティブシートを対象に、印刷する前に印刷プレビューを表示して確認するマクロ

リンクユニット


3行マクロ 36回

印刷ダイアログボックスを表示するには

今回は、印刷する前に、印刷プレビューや印刷ダイアログボックスを表示させると、必要な設定をし忘れたり、うっかり部数を間違えたりというようなミスがなくなり便利です。今回は、印刷プレビューや印刷ダイアログボックスを表示させるマクロを作ります。
(サンプルファイルは、こちらから 3行マクロ36回サンプルデータ
Excelバージョン:Excel20192016201320102007

印刷プレビューを表示するマクロ

はじめに、印刷プレビューを表示させるマクロの紹介です。
印刷プレビューを表示させるにはPrintPreviewメソッドを使います。 印刷設定を変更してほしくない場合の印刷プレビューです。
Sub 印刷プレビュー()
    Worksheets("Sheet1").PrintPreview EnableChanges:=False
End Sub
PrintPreviewでは、アクティブシートしかプレビューされません。
EnableChanges:=Falseとすることで、プレビュー画面で、印刷設定のボタンが使用不可になります。
印刷プレビューを表示するマクロ
印刷設定ができるようにしておく場合は、
Sub 印刷プレビュー2()
    Worksheets("Sheet1").PrintPreview EnableChanges:=True
End Sub
印刷プレビューを表示するマクロ2
印刷設定ボタンをクリックすると、ページ設定ダイアログボックスが表示されます。
あ
「印刷プレビュー」というマクロボタンを作っておくと便利です。

印刷ダイアログボックスを表示させるマクロ

印刷ダイアログボックスを表示させるには、ExcelというApplicationオブジェクトのDialogsコレクションのメンバーからxlDialogPrintを表示します。
Sub 印刷ダイアログ()
    Application.Dialogs(xlDialogPrint).Show
End Sub
印刷ダイアログボックスを表示させるマクロ
そして、印刷部数を設定したい場合、名前付き引数にArg4:=2のように指定します。
Sub 印刷ダイアログ()
    Application.Dialogs(xlDialogPrint).Show Arg4:=2
End Sub
マクロを実行すると、部数がすでに設定されて表示されます。
印刷ダイアログボックスを表示させるマクロ
Arg4:=2は、部数を2部という初期設定にする引数の使い方です。では、開始ページと終了ページを指定してするには、次のようにします。。
Sub 印刷ダイアログ2()
    Application.Dialogs(xlDialogPrint).Show Arg4:=2, Arg2:=1, Arg3:=2
End Sub

xlDialogPrintの引数


プリンタを指定したい場合は、Arg13:="Adobe PDF"のようにプリンタ名を""で囲ってく印刷ダイアログボックスを表示させるマクロ2ださい。
Sub 印刷ダイアログ表示3()
    Application.Dialogs(xlDialogPrint).Show Arg4:=2, Arg2:=1, Arg3:=2, Arg13:="Adobe PDF"
End Sub
実行すると以下のように表示されます。
印刷ダイアログボックスを表示させるマクロ3

今日の講義は以上です。お疲れ様でした。