こんにちは、今回の記事はExcel VBAマクロ、複数シートを印刷プレビューしたい時のサンプルマクロを紹介します。
複数シートをシートごと・複数シートをシートごとに範囲選択して印刷プレビューと2つのサンプルマクロを紹介していきます。それでは、いってみましょう!
シートごと複数シートで印刷プレビューするサンプルマクロ
プレビューしたいシートを複数選択して、選択されたシートを印刷プレビューするサンプルマクロです。
プレビューしたいシートをArray("シート名1","シート名2","シート名3")といったように、Arrayにシート名を「"」ダブルクォーテーションで囲い、カンマ区切りでシートを指定します。
Sub sheetPreview()
' 印刷プレビューしたいシートを複数選択
Sheets(Array("Sheet1","sheet2")).Select
' 選択されているシートをまとめてプレビュー
ActiveWindow.SelectedSheets.PrintOut Previes:=True
End Sub
サンプルマクロではシート名がSheet1とSheet2のシートをプレビューしています。Sheet1とSheet3とSheet5をプレビューするならば「Array("Sheet1","Sheet3","Sheet5")」とArray部分を書き換えればOKです。
各シートの範囲を指定して印刷プレビューするサンプルマクロ
シート全体ではなく、各シートで印刷範囲を指定した所のみプレビューしたい場合のサンプルマクロです。印刷範囲をPrintAreaで指定した後、シートを選択、印刷プレビューという流れのマクロです。
Sub sheetPreview()
' 各シートの印刷範囲を指定
Sheets("Sheet1").PageSetup.PrintArea = "A1:C3"
Sheets("Sheet2").PageSetup.PrintArea = "D1:F3"
' 印刷プレビューしたいシートを複数選択
Sheets(Array("Sheet1","sheet2")).Select
' 選択されているシートをまとめてプレビュー
ActiveWindow.SelectedSheets.PrintOut Previes:=True
End Sub
このサンプルマクロではSheet1のA1~C3と、Sheet2のD1~F3の範囲のみをプレビューします。
さいごに
いかがだったでしょうか!えーら処理など入れておりませんが、同じようなことをマクロで実現したい方の参考になれば幸いです。それでは、また!