- 公開日:
- 更新日:
エクセルのマクロで複数シートの印刷を行う方法
この記事では、エクセルのマクロで複数シートを印刷する方法をご紹介します。
エクセルのマクロを使えば、手動で各シートを選択して印刷する手間を省くことができます。
具体的なコード例や、印刷前に印刷プレビューを表示する方法もご説明しています。
Excelを使った日付選択のマクロを無料でダウンロード!
Excelでカレンダーから日付を入力できるマクロを無料でダウンロードできます。コードを変更すれば、カレンダーの背景色や、今日の日付の色を変更したりとカスタマイズすることも可能です。
開発タブを表示する
マクロで複数シートを印刷するとき、「開発」タブを使用します。
上記の画像のような「開発」タブが表示されていない場合は、設定をして表示させましょう。
詳細は、以下の記事を参考にしてください。
複数シートを印刷するコード
マクロで複数シートを印刷するコードを下記に記載するので、コピーして使用してください。
Sub 複数シートを印刷する()
Dim ws As Worksheet
Dim sheetNames As Variant
' 印刷するシートを指定
sheetNames = Array("Sheet1", "Sheet2", "Sheet3") ' 印刷するシート名を配列に追加
' 連続印刷
For Each sheetName In sheetNames
Set ws = ThisWorkbook.Sheets(sheetName)
ws.PrintOut
Next sheetName
End Sub
詳しい方法は、下記「エクセルのマクロで複数シートの印刷を行う方法」セクションでご紹介しています。
このVBAコードを使用すると、指定した複数シートが連続印刷されます。
上の画像の赤矢印で示す箇所を「PrintOut」から「PrintPreview」に変更すると、印刷前に印刷プレビューを表示させることができます。
多くのシートを印刷するときなど念のため確認したい場合は、印刷前にプレビューを表示するコードにしてみましょう。
また、上記のコードでは印刷設定に関するオプションは指定されていません。
必要に応じて、印刷範囲/印刷枚数/用紙サイズ/印刷方向などの印刷設定を追加できます。
エクセルのマクロで複数シートの印刷を行う方法
エクセルのマクロで複数シートの印刷を行う設定方法をご説明をします。
Excelファイルをマクロが有効なファイルとして保存します。ファイルタブを選択します。
①名前を付けて保存、②参照の順に選択します。
「名前を付けて保存」ダイアログボックスが表示されました。①ファイルの保存場所(例:デスクトップ)を選択し、②任意のファイル名(例:住所録)を入力します。③ファイルの種類で「Excel マクロ有効ブック」を選択し、④保存ボタンを押します。
VBAでコードを登録します。①開発タブ、②Visual Basicの順に選択します。
「Microsoft Visual Basic for Applications」が表示されました。①挿入タブ、②標準モジュールの順に選択します。
「標準モジュール」が表示されました。上記「複数シートを印刷するコード」のコードをコピーし貼り付けます。
コード内「印刷するシートを指定」の箇所(例:Sheet1、Sheet2、Sheet3)に印刷したいシート名を入力します。元々のシート名が日本語でも英語でも、表記通りに入力してください。シート名が違うとマクロが動かないので、シート名は正確に入力しましょう。
①ファイルタブ、②上書き保存の順に選択します。
VBAの設定が終わったので、編集画面に戻ります。①開発タブ、②マクロの順に選択します。
「マクロ」ダイアログボックスが表示されました。①作成したマクロ(例:複数シートを印刷する)、②マクロの保存先で作業中のファイル(例:住所録)の順に選択します。③実行ボタンを押すと印刷が開始されます。
実際に印刷して確認してみましょう。コードで指定したシート(例:Sheet1、Sheet2、Sheet3)が連続印刷されました。