【マクロ】連続印刷マクロで作業効率アップ!?

知のピース×データ整理
この記事は約3分で読めます。

✏️はじめに

印刷作業、毎回手間かかっていませんか?
たとえば、毎月の請求書や注文書など、「同じフォーマット」で「データだけが違う」ものを何枚も印刷する作業。1件ずつ開いて、確認して、印刷…繰り返すのは正直つらい。

美俊
美俊

ファイル、印刷を何度も何度もクリックするの、面倒なんだよな。

そんな時に便利なのが「マクロ(VBA)」!
一度作れば、クリック1回で印刷完了。業務の時短に効果バツグンです。


🛠️このマクロでできること

  • シート一覧を一括印刷
    → ファイル内にある全シートを自動で順番に印刷します。
  • ひな形へのデータ抽出を変数で行い、抽出データごとに印刷
    → 1つのテンプレートに、データを差し込みながら連続印刷。例えば「名前」「日付」「金額」などを毎回変えて印刷したい時に最適です。

基本のマクロコード(全シート印刷)

Sub PrintAllSheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ws.PrintOut
Next ws
End Sub

このコードは、現在開いているExcelファイルのすべてのシートを一括で印刷します。
部署別資料、月別シートなど、シートが分かれているケースでは非常に便利!


応用:データ抽出+ひな形で連続印刷

Sub PrintByData()
Dim i As Long
Dim lastRow As Long
lastRow = Sheets("データ").Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To lastRow
Sheets("ひな形").Range("B2").Value = Sheets("データ").Cells(i, 1).Value
Sheets("ひな形").PrintOut
Next i
End Sub

このマクロでは、「データ」シートのA列にある内容を、「ひな形」シートの指定セル(ここではB2)に1件ずつ差し込みながら印刷しています。

たとえば…

  • A列:顧客名
  • B2セル:印刷する顧客名の場所

のように設定すれば、1つのフォーマットに顧客名だけを差し替えて連続印刷することができます。


🧩まとめ

  • 印刷作業はマクロ化することで大幅に時短できます。
  • ひな形+変数の組み合わせで「柔軟な印刷自動化」が可能に!
  • あなたの現場に合わせて、範囲や内容をカスタマイズして使ってみてください。

🗣️最後に

マクロで時短したいことは何ですか?
「こんな作業も自動化したい」というアイデアがあれば、ぜひコメントで教えてください!

コメント

タイトルとURLをコピーしました