WordでPDFエクスポートをするVBAを書いた
Wordを最近使う機会があって、毎回同じ名前を入力してエクスポートするのが面倒だったので書いてみた。
エクスポートのやり方
Sub ExportToPDF() ActiveDocument.ExportAsFixedFormat OutputFileName:="output.pdf", ExportFormat:=wdExportFormatPDF End Sub
これを実行すればWordでPDFのエクスポートができるようになる。
任意の名前にするのは、OutputFileName:="output.pdf" の 「"output.pdf"」自分の出力したい名前にしておけばいい。
勉強用のメモ
勉強用に、参照オブジェクトのオブジェクト変数への代入処理をメモしておく。
Sub ExportToPDF() Dim wordDoc As Word.Document Set wordDoc = ActiveDocument wordDoc.ExportAsFixedFormat OutputFileName:="output.pdf", ExportFormat:=wdExportFormatPDF Set wordDoc = Nothing End Sub
定義した変数への代入は、Setですることができる。これがよく分からなくてVBAは敬遠してたけどやっとわかった。Visual Basic Editorのヘルプにドキュメントがあったのでそれをちゃんと見ないといけない。
VBAで開発で覚えたほうがいいこと
デバッグはDibug.Printを使って、Visual Basic Editorの[表示]->イミディエイトウィンドウに出力するとデバッグがちゃんとできるようになる。
F8でできるステップ実行、[表示]→[オブジェクトブラウザー]の使い方も覚えるとちゃんとVBAの開発ができるようになる。
VBAで気を付けたほうがいいこと
- どうもメソッドなどに()をつけるとエラーの原因になるので付けないほうがいい。
- 付属のヘルプを見よう。ヘルプは
Visual Basic Editor→
ヘルプ→
Microsoft Visual Basic for Application ヘルプ
で、豊富な情報を見ることができる。