- 公開日:
- 更新日:
エクセルのシートごとに分けてPDF化する方法
エクセルで「シート1.pdf」「シート2.pdf」のようなシートごとに分かれたPDFを作成したい場合、手作業で1枚1枚PDFに変換するのは非効率的です。
ここでは、エクセルのVBAを使ってシートごとにPDF化する方法をご紹介します。
コピーしてすぐに使えるVBAコードも用意しましたので、コピー&ペーストの簡単な作業で各シートを自動的にPDF化することができます。
開発タブを表示する
エクセルでVBAを使用するときは、上の画像のような「開発」タブを表示させる必要があります。
開発タブは他のホームタブや挿入タブとは違い、初期設定では表示されていません。
エクセルで開発タブを表示させる方法は、以下の通りです。
ファイルタブを選択します。
オプションを選択します。
「Excel のオプション」ダイアログボックスが表示されます。
リボンのユーザー設定を選択し、画面右側の「開発」にチェックを入れ、OKボタンを押します。
これで開発タブが表示されました。
シートごとにPDF化するVBAコード
エクセルでシートごとにPDF化するVBAコードは、以下の通りです。
Sub シートごとにPDF化()
Dim Sheet As Worksheet
For Each Sheet In ThisWorkbook.Worksheets
Sheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=ActiveWorkbook.Path & "\" & Sheet.Name, _
Quality:=xlQualityStandard, _
OpenAfterPublish:=True
Next
End Sub
このコードは、「操作中のエクセルファイルがある場所に、各シートのPDFを保存する」というものです。
例えば、「シート1/シート2」を「シート1.pdf」「シート2.pdf」というように分けてPDF化したい場合、このコードが役に立ちます。
コードの詳細については、以下の表をご覧ください。項目ごとに分けて解説しています。
項目 | 説明 |
---|---|
ExportAsFixedFormat | エクセルのデータをPDFまたはXPS形式で出力するために使用する |
Type | 出力形式 xlTypePDF:PDF形式で出力 |
Filename | 出力ファイルの保存先とファイル名 ActiveWorkbook.Path:操作中のエクセルファイルがある場所に保存 Sheet.Name:シート名をファイル名にする(例:シート1→シート1.pdf) |
Quality | 画質 xlQualityStandard:標準 xlQualityMinimum:最小 |
OpenAfterPublish | 出力後、ファイルのプレビューを表示するか True:表示する False:表示しない |
以下の「エクセルのシートごとに分けてPDF化する方法」セクションでは、実際にご紹介したVBAコードを使用して、シートごとにPDF化する方法を説明します。
エクセルのシートごとに分けてPDF化する方法
エクセルのVBAを使って、シートごとに分けてPDF化する方法をご紹介します。
今回使用するVBAコードは「操作中のエクセルファイルが保存されている場所」に、各シートのPDFを保存するものです。そのため、VBAを起動する前にエクセルのファイルを保存しておきましょう。ファイルタブを選択します。
名前を付けて保存、参照の順に選択します。
「名前を付けて保存」ダイアログボックスが表示されます。保存先(例:ダウンロード)を選択し、ファイル名(例:ブック1)を入力し、ファイルの種類、Excel マクロ有効ブック (*.xlsm)の順に選択します。
保存ボタンを押します。
エクセルの編集画面に戻ります。ここでは例として「シート1/シート2/シート3」をそれぞれ分けてPDF化します。開発タブ、Visual Basicの順に選択します。
「Microsoft Visual Basic for Application」が起動します。挿入タブ、標準モジュールの順に選択します。
本記事の「シートごとにPDF化するVBAコード」セクションにあるVBAコードをコピーし、モジュール内にペーストします。
Sub/ユーザー フォームの実行を選択します。
今回は、OpenAfterPublish(ファイルのプレビューを表示するか)をTrue(表示する)に指定したため、PDFのプレビューがすぐに表示されます。PDFを見てみると、シート1.pdf、シート2.pdfというようにシートごとにPDF化されていることを確認できます。
PDFがちゃんと保存されているかも確認しておきましょう。エクスプローラー、エクセルのファイルの保存先(例:ダウンロード)の順に選択すると、先ほど保存したファイルと同じ場所に自動でPDFが保存されていることを確認できます。