マクロが入ってるエクセルと同じフォルダのエクセルファイルを開いて
全てのシートを印刷するマクロ
コード
Sub 全シート印刷シンプル() Dim Path As String Dim FileName As String Dim WB As Workbook Dim WS As Worksheet 'マクロエクセルが保存されているフォルダのパスを取得 Path = ThisWorkbook.Path & "\" 'フォルダの中で拡張子がxlsxのファイルを取得 FileName = Dir(Path & "*.xlsx") '繰り返し処理 Do While FileName <> "" 'フォルダ内のエクセルを開いて変数に設定 Set WB = Workbooks.Open(Path & FileName) ' 各ワークシートに対して処理 For Each WS In WB.Sheets '印刷 WS.PrintOut ' 繰り返し Next WS 'ファイルを閉じる WB.Close 'ファイルを再取得 FileName = Dir '繰り返し Loop MsgBox "印刷完了" End Sub
注意点
印刷の設定をしたい場合はコードを追加すること。
横向きに印刷したい場合、印刷するコードの前に以下を挿入。
'横向きにする WS.PageSetup.Orientation = xlLandscape
1ページに収めたい場合は印刷のコードを以下に書き換える。
With WS 'zoom表示を無効にする .PageSetup.Zoom = False '縦方向を1ページに収める .PageSetup.FitToPagesTall = 1 '横方向を1ページに収める .PageSetup.FitToPagesWide = 1 '印刷 .PrintOut End With