📘 Excel逆引き事典

【VBA】非表示シートも含めてPDF保存する方法

手作業で大量のデータをPDFに変換するのは大変な作業です。特に非表示のシートも含めて一括処理したい場合、このマクロが業務効率化に大きく貢献します。

サンプルコード

VBA
Option Explicit
Sub SaveSheetAsPDFWithoutAlerts()
    Dim ws As Worksheet
    Application.DisplayAlerts = False '確認メッセージを非表示にする
    For Each ws In ThisWorkbook.Sheets
        If Not ws.Visible = xlSheetHidden Then '非表示のシートはスキップする
            ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\path\to\your\file.pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
        End If
    Next ws
    Application.DisplayAlerts = True '確認メッセージを元に戻す
End Sub

よくある質問

Q 元に戻せますか?

A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。

Q エラーが出たら?

A.
シート名や列番号が正しいか確認してください。また、保存先のパスにアクセス権があるかも確認してみてください。