Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

ディレクトリにあるExcelファイルをすべて印刷するマクロ

設定書を印刷するって作業があったので、マクロで印刷した。
数分で書いたので、マクロをF5で直接実行&ディレクトリ固定。適宜書き換えて使って。

Sub printOutAllBookInDirectory()
    
    Dim fileName As String
    fileName = Dir("C:\print" & "\*.xls", vbNormal)

    Do While fileName <> ""
        
        Workbooks.Open "C:\print\" & fileName
        
        Workbooks(fileName).Activate
        
        ActiveWorkbook.PrintOut Copies:=1, Collate:=True
        
        ActiveWorkbook.Close
                           
        fileName = Dir()
    Loop
    
End Sub

ただし、印刷のプロパティで両面印刷とかが保存されてると、あるシートだけ両面で出たりするので、印刷前に戻しておくこと。