VBAで担当者別集計表をPDF保存するコード(ExportAsFixedFormat)|案件管理システムVer.1完成版

・担当者別集計表をPDF化して保存
・保存先フォルダを選ぶだけで利用可能
・報告書や進捗資料の作成を効率化

このコードでできること

・担当者別集計表をPDFで保存
・保存先フォルダを自由に選択
・保存後にPDFを自動で開く

VBAコード

Sub 担当者別集計PDF保存()

Dim wsOut As Worksheet
Dim fd As FileDialog
Dim saveFolder As String
Dim pdfPath As String

Set wsOut = Worksheets("担当者別集計(VBA)")

Set fd = Application.FileDialog(msoFileDialogFolderPicker)

With fd

    .Title = "PDF保存先フォルダを選択してください"

    If .Show <> -1 Then Exit Sub

    saveFolder = .SelectedItems(1)

End With

pdfPath = saveFolder & "\" & _
          "担当者別集計_" & _
          Format(Now, "yyyymmdd_hhnnss") & ".pdf"

wsOut.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=pdfPath, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=True

MsgBox "PDF保存が完了しました。", vbInformation

End Sub

カスタマイズ例

パターン①

PDF保存後に自動で開かない

OpenAfterPublish:=False

パターン②

ファイル名に担当者別集計表を追加する

pdfPath = saveFolder & "\" & _
          "担当者別集計表_" & _
          Format(Now, "yyyymmdd_hhnnss") & ".pdf"

よくあるエラー

症状

PDFが保存されない

対処法

・保存先フォルダへの権限を確認する

・同名ファイルが開かれていないか確認する

症状

実行時エラーが発生する

対処法
・担当者別集計(VBA)シートが存在するか確認する
・印刷範囲設定を確認する

サンプルファイル

このコードを試せるサンプルファイルを配布しています。

サンプルファイルをダウンロード(.zip)

関連記事

VBAで案件データを登録するコード

VBAで担当者別集計表を自動作成するコード

VBAで入力フォームを自動クリアするコード

次回予告

次回は新プロジェクトを開始します。

お楽しみに。

コメント