Excel Hack

フォルダ内のエクセルを一括でPDF化する方法

大量のエクセルファイルを一気にPDF化したいとき、1つ1つファイルを開いて変換していたら、膨大な時間がかかってしまいます。

ここでは、フォルダ内のエクセルファイルを一括でPDFに変換する方法をご紹介します。

VBAのコードをコピーして、指定の場所に貼り付けるだけの簡単な作業で自動化できます。

本記事をPDFとして無料ダウンロード

PDF

本記事をPDFで無料ダウンロードいただけます。

タブレットでPDFを再生したり紙に印刷することで、いつでも記事の内容を確認できます。

開発タブを表示する

開発タブを表示する

エクセルのVBAを使用するには、初期設定では表示されていない「開発」タブを表示させる必要があります。

開発タブを表示させる方法は、以下の通りです。

ファイルタブを選択する

ファイルタブを選択します。

オプションを選択する

オプションを選択します。

開発にチェックを入れる

「Excel のオプション」ダイアログボックスが表示されます。

リボンのユーザー設定を選択し、「開発」にチェックを入れ、OKボタンを押します。

開発タブが表示された

開発タブが表示されました。

フォルダ内のエクセルをPDF化するVBAコード

フォルダ内のエクセルファイル

フォルダ内にある全てのエクセルファイルを一括でPDF化したい場合は、以下のコードを利用してください。

Sub エクセル一括PDF化()

Dim ExcelFile, FileName, FilePath, ExcelPDF As String

Application.ScreenUpdating = False

ExcelFile = Application.GetOpenFilename("Microsoft Excelブック,*.xlsx")
FileName = Dir(ExcelFile)
FilePath = Replace(ExcelFile, FileName, "")
ExcelPDF = Dir(FilePath & "*.xlsx")

Do While ExcelPDF <> ""

Workbooks.Open FileName:=FilePath & ExcelPDF, ReadOnly:=True
ExcelPDF = Left(ExcelPDF, InStr(ExcelPDF, ".") - 1)
ActiveWorkbook.ExportAsFixedFormat _
Type:=xlTypePDF, _
FileName:=FilePath & ExcelPDF
ActiveWindow.Close
ExcelPDF = Dir()

Loop

Application.ScreenUpdating = True

End Sub

このコードは、「特定のフォルダの中にあるエクセルファイルを、1つずつ開いてPDFに変換する」というものです。

コードの詳細については以下の表をご参照ください。各項目がどのような動作をするのか解説しています。

項目説明
Application.ScreenUpdatingマクロの処理過程を見るかどうか
True:マクロの処理過程を見る
False:マクロの処理過程を見ない
マクロが終了した後はTrueに戻す
GetOpenFilename「ファイルを開く」ダイアログボックスを表示する
Workbooks.ReadOnlyファイルを読み取り専用で開くかどうか
True:開く
False:開かない
ExportAsFixedFormatエクセルのデータをPDFまたはXPS形式で出力するために使用する
Type出力形式
xlTypePDF:PDF形式で出力
Filename出力ファイルの保存先とファイル名

以下の「フォルダ内のエクセルを一括でPDF化する方法」セクションでは、こちらのVBAコードを実際に使用して、フォルダ内のエクセルファイルをPDF化する方法を説明します。

フォルダ内のエクセルを一括でPDF化する方法

エクセルのVBAを使用して、フォルダ内のエクセルファイルを一括でPDF化する方法をご紹介します。

作業時間:5分

新規ブックを作成する

新規ブックを作成する

VBAを使用する前に新たにブックを作成し、マクロ有効ブックとして保存しておきましょう。新規ブックを作成し、ファイルタブを選択します。

参照を選択する

参照を選択する

名前を付けて保存、参照の順に選択します。

マクロ有効ブックを選択する

マクロ有効ブックを選択する

ブックの保存先(例:ダウンロード)、ファイル名(例:ブック1)を入力し、ファイルの種類、Excel マクロ有効ブック(*.xlsm)の順に選択します。

保存ボタンを押す

保存ボタンを押す

保存ボタンを押します。

Visual Basicを選択する

Visual Basicを選択する

エクセルの編集画面に戻り、開発タブ、Visual Basicの順に選択します。

標準モジュールを選択する

標準モジュールを選択する

「Microsoft Visual Basic for Applications」が起動します。挿入タブ、標準モジュールの順に選択します。

VBAコードを貼り付ける

VBAコードを貼り付ける

本記事「フォルダ内のエクセルをPDF化するVBAコード」セクションにあるコードをコピーし、モジュール内に貼り付けます。

Sub/ユーザーフォームの実行を選択する

Sub/ユーザーフォームの実行を選択する

Sub/ユーザーフォームの実行を選択します。

フォルダを選択する

フォルダを選択する

「ファイルを開く」ダイアログボックスが表示されます。フォルダがある場所(例:ダウンロード)、フォルダ(例:フォルダ1)の順に選択します。

エクセルファイルを選択する

エクセルファイルを選択する

エクセルのファイル(例:データ1)をどれか1つ選択し、開くボタンを押します。

フォルダにアクセスする

フォルダにアクセスする

少し待つと、エクセルファイルがすべてPDFに変換されます。フォルダにアクセスし、確認してみましょう。エクスプローラー、フォルダのある場所(例:ダウンロード)、フォルダ(例:フォルダ1)の順に選択します。

フォルダ内のエクセルを一括でPDF化できた

フォルダ内のエクセルを一括でPDF化できた

これでフォルダ内のエクセルファイルを一括でPDF化することができました。

このページを見ている人におすすめの商品

コメント

この記事へのコメントをお寄せ下さい。

0 コメント
Inline Feedbacks
View all comments