Excelマクロ超入門 Excel→PDFファイルを出力するには?

Excelマクロ入門

手でやる処理をマクロでやることもできます。

わたしがやっているのは、ExcelシートをPDFファイルで出力するというものです。

Excelでつくった資料はPDFファイルで送る

Excelでつくった資料をPDFファイルにすることもあるでしょう。

わたしもお客様に提出する資料をExcelでつくる場合、最終的にPDFファイルにしています。

Excelファイルを共有したり、チャットやメールに添付して送ると、数式が変わってしまうなど予期せぬ変更の可能性もあります。

入力のためのExcelファイルをDropboxで共有することはやっていますが、見ていただく資料であればExcelでつくったシートをPDFファイルにすれば足りますし、紙でやり取りする必要もなくなります。

ExcelシートをPDFファイルで出力する

ExcelシートをPDFで出力するには、F12をクリックして「名前をつけて保存」の画面を表示させ、ファイルの種類をPDFにして保存する、

GOforIT

もしくは、カーソルをTabキーで1つ進めて、ファイルの種類のところで「P」をタッチすることで、PDFが選択されます。

そのまま保存すればPDFファイルで保存できます。

わたしは、この操作をクイックアクセスツールバーを使って、Alt+7ですぐにPDFファイルで保存できるようにしています。

Excel超入門 クイックアクセスツールバーで自分好みのショートカットキーをおいてみよう | GO for IT 〜 税理士 植村 豪 Official Blog

もし、複数枚のシートを1つのファイルで保存する場合には、PDFファイルにまとめたいシートをすべて選択してから、前述のようにファイル保存すれば大丈夫です。

GOforIT

マクロを使ってPDFファイルで出力する流れ

複数のシートを選んでから、PDFファイルで保存するという流れをマクロでやることもできます。

Sub pdf()
    
    'PDFファイルで保存
    Worksheets(Array("推移表", "資金繰り", "グラフ")).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveWorkbook_
.Path & "\" &"Sample(ファイル名)" & ".pdf"
    Worksheets("Sheet1").Select

End Sub

Arrayは、シート名を配列として指定するときに使います。

マクロの記述については、こちらの記事にまとめています。

Excel VBA超入門 マクロを書いてみたい人集合! 仕事ときどきアウトプットがおすすめ | GO for IT 〜 税理士 植村 豪 Official Blog

まずは「Worksheets(Array(“推移表”, “資金繰り”, “グラフ”)).Select」で推移表と資金繰りとグラフという3つのシートを選んでいます。

その後に、選んた3つのシートをブックの保存しているパスにPDFファイルで保存しています。

最後は複数のシートを選択したままの状態を解除するために別シートを選んでいます。ここではSheet1にしました。

わたしはDropboxの中のinboxというフォルダに格納したいのでFilename以下を次のように書いています。

Sub pdf()
    
   'PDFファイルで保存
    Worksheets(Array("推移表", "資金繰り", "グラフ”)).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=_
"\\Mac\Dropbox\0 inbox\Sample"
    Worksheets("Sheet1").Select 

End Sub
補足
「_(アンダーバー)」は行をおりかえすときに使います。

保存先のパスは、Windowsならエクスプローラーからパスのコピーをすればわかりますし、

Macなら保存先でoption+command+Cで保存先のパスをコピーすることができますので、貼り付けましょう。

マクロを起動するボタンをつくることもできます。

Excelマクロ超入門 マクロを使ってもらうときにやっておきたいこと | GO for IT 〜 税理士 植村 豪 Official Blog

ちょっとした操作でも何度も繰り返す処理なら自動化にしてみるのも手です。

ちょっとしたことだからこそ、マクロを試しやすいというメリットもあります。


【編集後記】
昨日はじぶんの月次をまとめる日。夜は長男(6)の学校の宿題をチェック。「ゆ」を書く練習と教科書の3行ほどの音読。まぁ、元気な声で読めているかなと。○か◎かでテンションがちょっと変わります。△がつくとかは想定していないみたいですが。

【昨日の1日1新】
※「1日1新」→詳細はコチラ
meito ミックスベリーティー
U-21 EUROの試合観戦