【Excelマクロ】複数エクセルファイル、複数シートを一括印刷する【VBAコード】

公務員スキルアップ
この記事は約6分で読めます。
フォルダ内の全てのExcelファイル、全てのExcelシートを一括印刷したい!かんたんにできるVBAマクロを紹介します。

Excelファイルを印刷する際、いちいちファイルを開かなければいけなかったり、シートを選択し忘れたり・・・。意外と手間がかかる上に落とし穴が多いのでマクロにしてみました。

Excel複数ファイル複数シートを一括印刷マクロ(VBAコード)

1.印刷したいExcelファイル群と同じフォルダ内に「マクロ用のExcelファイル」を作成します。
2.次のマクロを登録して、実行します。
3.同フォルダ内のExcel全ファイル及び全シートを連続印刷します。

Sub sample()

Application.ScreeenUpdating = False ‘画面更新オフ

Dim dstSheet As Worksheet
Set dstSheet = ThisWorkbook.Worksheets(1)
Path = Application.ThisWorkbook.Path & “\”
Dim buf As String
  buf = Dir(Path & “*.xls*”) ‘同じフォルダパス内のエクセルファイル

Dim srcBook As Workbook
Dim srcSheet As Worksheet
Do While buf <> “”
If buf <> ThisWorkbook.Name Then ‘本ファイルは対象外
Set srcBook = Workbooks.Open(Path + buf)
For i = 1 To Sheets.Count ‘全シート
Set srcSheet = srcBook.Worksheets(i)
srcSheet.PrintOut
Next
srcBook.Close False
End If
buf = Dir()
Loop
Application.ScreeenUpdating = True ‘画面更新オン
End Sub

印刷設定は、Excelファイルの設定に依存。 一括して印刷設定は不可

Excelは、ファイルやシートごとにページ設定/印刷設定の情報を持ちます。
たとえば、全てのファイルを両面印刷したい場合、VBA側で処理はできません。

Excel作成時または保存時に印刷設定を統一するルール付けをしておくとよいです。

ちなみに、印刷設定する場合は、シートを複数選択して設定を変更した場合でも、設定変更できるのは最初に選択したシートのみであり、全てのシートの設定を一括で変更することはできません。

Excel複数ファイル複数シートを一括印刷マクロ  まとめ

Excelファイルを印刷する際、いちいちファイルを開かなければいけなかったり、シートを選択し忘れたり・・・。意外と手間がかかる上に落とし穴が多いのでマクロにしてみました。

事務仕事で何かと使う機会が多いと思うのでおすすめです。

VBAの基本を学ぶには、MOS(マイクロソフト オフィス スペシャリスト)検定の教科書で有名な、富士通の「よくわかる」シリーズがおすすめです

]]>
人気記事はこちら!
ヨドバシ福袋中身ネタバレ 2023年【夢のお年玉箱】
ヨドバシカメラ福袋(夢のお年玉箱)の中身をネタバレします! 2023年も昨年同様ネット申し込みになりますので、2022/12/28以降、届き次第、順次公開します。過去が良すぎて、今年は一部で微妙な印象がありますが、今年もおすすめ商品、神袋はあります!カメラ・ウォッチ・美容家電・キッチン家電・Apple・SIMフリースマ...

公務員に医療保険は不要?病気休暇と共済組合の付加給付でも補償できない範囲とは?
公務員の福利厚生は充実しており、一見すると医療保険は不要に思えます。療養休暇や休職制度が手厚い。共済保険組合で法定給付の他に付加給付まであります。ただし、実際には「退職後の医療保障」「先進医療は自己負担」等の不安点もあるので、カバーしきれないと思う部分について、医療保険への加入を検討しましょう。