プチIT化 PR

【Excel VBA】複数シートの印刷プレビュー方法、範囲指定も!

記事内に商品プロモーションを含む場合があります。
当サイトは、アフィリエイト広告を利用しています。

こんにちは、今回の記事は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の範囲のみをプレビューします。

さいごに

いかがだったでしょうか!えーら処理など入れておりませんが、同じようなことをマクロで実現したい方の参考になれば幸いです。それでは、また!