エクセルのファイルやシートをPDFに変換したいとき、一枚ずつ操作するのは手間がかかります。
「複数シートをまとめてPDF化したい」「複数のエクセルファイルを一括でPDFに変換したい」という場面は、業務の中でもよく出てくるものでしょう。
エクセルには複数シートや複数ファイルをまとめてPDF化するための機能が備わっており、活用することで変換作業を大幅に効率化できます。
この記事では、シート・ブック・複数ファイルの一括PDF変換方法をわかりやすく解説します。
エクセルでまとめてPDF化する基本は「名前を付けて保存」からのPDF出力
それではまず、エクセルでまとめてPDF化する基本操作から解説していきます。
エクセルでPDFを作成する最も基本的な方法は、「名前を付けて保存」からファイル形式をPDFに指定する方法です。
Ctrl+Shift+Sキーまたはファイルタブ→「名前を付けて保存」をクリックし、ファイルの種類で「PDF (*.pdf)」を選択して保存します。
エクセルからPDFを作成する主な方法
・ファイルタブ→「名前を付けて保存」→ファイルの種類で「PDF」を選択
・ファイルタブ→「エクスポート」→「PDF/XPSの作成」をクリック
・Ctrl+Pキーで印刷画面を開き、プリンターで「Microsoft Print to PDF」を選択
どの方法でも品質の高いPDFを作成できますが、複数シートをまとめてPDF化する場合は手順が少し異なります。
「エクスポート」機能でPDFを作成する手順
ファイルタブをクリックし、左メニューの「エクスポート」をクリックします。
「PDF/XPSの作成」をクリックすると保存ダイアログが開き、ファイル名と保存場所を指定してPDFを作成できます。
「オプション」ボタンをクリックすると、印刷対象のシート範囲やページ範囲を細かく指定することも可能です。
「Microsoft Print to PDF」でPDF化する
Ctrl+Pキーで印刷画面を開き、プリンターの選択欄で「Microsoft Print to PDF」を選択します。
印刷ボタンをクリックするとPDFの保存先を指定するダイアログが表示され、PDFとして保存できます。
この方法は印刷設定(余白・用紙サイズ・拡大縮小)をそのまま反映してPDF化できるため、レイアウトを細かく調整したい場合に便利でしょう。
エクセルで複数シートをまとめてPDF化する方法
続いては、複数シートをまとめて1つのPDFファイルに変換する方法を確認していきます。
複数シートを個別にPDF化すると複数のPDFファイルができてしまいます。
シートタブを複数選択してからPDF化すると、複数シートを1つのPDFファイルにまとめて出力できます。
シートタブを複数選択してまとめてPDF化する手順
まずシートタブをCtrlキーまたはShiftキーで複数選択し、作業グループの状態にします。
次にファイルタブ→「エクスポート」→「PDF/XPSの作成」をクリックし、保存場所とファイル名を指定して「発行」ボタンをクリックします。
これで選択した複数シートが1つのPDFファイルにまとめて出力されます。
作業グループ状態でファイルタブ→「エクスポート」→「PDF/XPSの作成」をクリックする操作イメージです。
「ブック全体」を指定して全シートを1つのPDFにまとめる
ファイルタブ→「エクスポート」→「PDF/XPSの作成」をクリックして保存ダイアログを開きます。
「オプション」ボタンをクリックし、発行対象を「ブック全体」に変更してOKをクリックします。
この設定にすることで、シートを個別に選択しなくてもブック内のすべてのシートを1つのPDFにまとめて出力できます。
オプションで「ブック全体」を選択することで、全シートを1つのPDFにまとめて出力できます。
シートごとに別々のPDFとして保存する方法
シートごとに個別のPDFファイルとして保存したい場合は、VBAマクロを使うと効率的です。
Sub シートごとPDF保存()
Dim ws As Worksheet
Dim savePath As String
savePath = ThisWorkbook.Path & “\”
For Each ws In ThisWorkbook.Worksheets
ws.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=savePath & ws.Name & “.pdf”
Next ws
End Sub
このマクロを実行すると、ブック内の各シートがシート名のファイル名でPDFとして個別に保存されます。
複数のエクセルファイルをまとめてPDF化する方法
続いては、複数のエクセルファイルを一括でPDF変換する方法を確認していきます。
エクセルの標準機能だけでは複数ファイルの一括PDF変換はできませんが、VBAマクロを活用することで自動化できます。
VBAマクロでフォルダ内のファイルを一括PDF変換する
以下のマクロを使うと、指定フォルダ内のすべてのエクセルファイルをPDFに一括変換できます。
Sub 複数ファイル一括PDF()
Dim folderPath As String
Dim fileName As String
folderPath = “C:\Users\ユーザー名\Documents\変換フォルダ\”
fileName = Dir(folderPath & “*.xlsx”)
Do While fileName <> “”
Dim wb As Workbook
Set wb = Workbooks.Open(folderPath & fileName)
wb.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=folderPath & Replace(fileName, “.xlsx”, “.pdf”)
wb.Close SaveChanges:=False
fileName = Dir()
Loop
MsgBox “PDF変換が完了しました。”
End Sub
folderPathを実際のフォルダパスに変更して使用します。
変換後のPDFは元のエクセルファイルと同じフォルダに保存されます。
エクスプローラーからまとめてPDF変換する方法
Windowsのエクスプローラーで複数のエクセルファイルを選択し、右クリックから「印刷」を選択します。
プリンターで「Microsoft Print to PDF」を指定しておくと、複数ファイルをまとめてPDF化できます。
ただし1ファイルずつ保存先を指定する必要があるため、ファイル数が多い場合はVBAマクロの方が効率的でしょう。
VBAエディタ(Alt+F11キーで開く)でマクロを作成し、実行ボタンで一括PDF変換を行う操作イメージです。
PDF変換時に確認しておきたいポイント
PDF化する前に、印刷範囲・用紙サイズ・余白の設定が意図通りになっているか確認しましょう。
特に「印刷範囲が設定されていない場合、データのあるセル全体がPDF化されてしまう」点に注意が必要です。
また、PDFの発行オプションで「最小サイズ(オンライン発行)」と「標準(印刷およびオンライン発行)」の2種類の品質が選べるため、用途に応じて使い分けるとよいでしょう。
エクセルのまとめてPDF化まとめ
・複数シートを1つのPDFに:シートタブを複数選択→エクスポート→PDF/XPS作成
・全シートを1つのPDFに:エクスポートのオプションで「ブック全体」を選択
・シートごとに個別PDF:VBAのExportAsFixedFormatを使ったマクロで自動化
・複数ファイルを一括PDF変換:VBAマクロまたはエクスプローラーから印刷でPDF出力
まとめ
この記事では、エクセルでまとめてPDF化する方法について解説しました。
単一シートのPDF化から複数シートの一括PDF出力、ブック全体のPDF化、さらにVBAマクロを使った複数ファイルの一括PDF変換まで、さまざまな方法を紹介しました。
「エクスポート」機能のオプションで「ブック全体」を選ぶ方法は、シートを個別に選択する手間が省けてとても便利です。
ファイル数が多い場合はVBAマクロを活用することで、さらに効率よくPDF変換作業を進めることができるでしょう。
今回紹介した方法をぜひ活用して、エクセルのPDF変換をスムーズに行ってみてください。