連載
» 2016年10月31日 05時00分 UPDATE

Excelマクロ/VBAで始める業務自動化プログラミング入門(16):印刷設定したExcelシートをPDF化して保存&個人情報管理システムの仕上げ (3/3)

[薬師寺国安,PROJECT KySS]
前のページへ 1|2|3       

シートを指定した形式のファイルにエクスポートする「ExportAsFixedFormat」メソッドの使い方(「PDFに書き出す」ボタンがクリックされたときの処理)

 最後は、「PDFに書き出す」ボタンがクリックされたときの処理だ(リスト9)。

Private Sub PDFボタン_Click()
  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\ExcelVBAPDF\個人情報.pdf"
End Sub
リスト9 「PDFに書き出す」ボタンがクリックされたときの処理

 アクティブなシートを、「ExportAsFixedFormat」メソッドで、指定した形式のファイルにエクスポートする。

ファイルの形式の種類を指定する「Type」

 「Type」にはファイルの形式の種類を指定する。ここではPDFに書き出すため、「xlTypePDF」を指定しているが、XPS形式に書き出すために「xlTypeXPS」を指定することも可能だ。

エクスポートするファイルの完全パスを指定する「Filename」

 「Filename」には、新しいPDFファイル、またはXPSファイルの完全パスを指定する。ここでは「C:\ExcelVBAPDF」フォルダ内に「個人情報.pdf」として保存している。

PDFにシートを書き出す場合の注意点

 注意してほしいのは、PDFにデータを書き出す場合は、事前に「C:\」に「ExcelVBAPDF」というフォルダを作成しておく必要がある点だ。このフォルダを事前に作成していないとエラーになってしまう。

 Excel VBAの「MKDir」ステートメントでもフォルダは自動的に作成できるのだが、既に同じフォルダが存在しているとエラーを返すので、この方法は採らずに、手動でフォルダを事前に作成しておくという安全策を採った。

 また、PDFとして書き出す場合は、メニューから「印刷設定」で印刷される範囲を必ず先にプレビューしておく必要がある。プレビューをした後、「印刷またはPDF化」メニューで「PDFに書き出す」を実行していただきたい。この前段階を省略すると、データが用紙に収まらないので注意してほしい。

PDFエクスポートの実行結果

 実際にエクスポートされるPDFは図4のようになる。図4のPDFで表示されているデータは、同じデータをコピー&ペーストして複数枚にわたって書き出させた。各ページの先頭には項目名がちゃんと入っている。

図4 「C:\ExcelVBAPDF\個人情報.pdf」がエクスポートされている

 これで全てのメニューに関連付いた処理が完成だ。

マクロのアレンジや、「あいまい検索」にも挑戦してみよう

 今回で4回にわたって紹介した「Excel VBAで作る個人情報管理システム」の応用編は終わりだ。「個人情報」に関する処理の仕方は、だいたい網羅できたと思っている。この連載を参考にし、マクロをアレンジして各自の職場で利用していただきたい。

 本連載の心残りは、「あいまい検索」を実装して、同姓同名だが「住所」や「電話番号」の異なる人物を全部検索して、複数のデータがある場合は[次]ボタン、[前]ボタンを表示して、全ての同姓同名の人物を表示させる処理に手が回らなかったことだ。ただ、オートフィルタ表示による「あいまい検索」は新規に追加しておいた。これらを参考にして読者各自が、自分なりの「あいまい検索」を実装してみてほしい。

 本連載「Excelマクロ/VBAで始める業務自動化プログラミング入門」では初心者編から、今回の「Excel VBAで作る個人情報管理システム」といった応用編までを解説してきたわけだが、いかがだっただろうか。Excel VBAに興味を持っていただき、「よし! わが社の業務をExcel VBAでマクロ化して、業務の効率化を図ろう」という気持ちになっていただければ、筆者冥利に尽きるのだが……。

 一気にExcel VBAで日常の業務をマクロ化して、効率化を図るのは大変だと思う。少しずつ、業務の一部分をマクロ化して効率化を図っていけば、何カ月か後には、ほとんどの業務がマクロ化でき、会社の売上にも貢献するのではないだろうか、と筆者は思っている。ぜひ実践してみてほしい。

 長い間のお付き合いありがとうございました。また、お会いできる日まで……。

■更新履歴

【2016/10/31】Windows 10、Excel 2016に対応しました。


参考書籍

著者プロフィール

PROJECT KySS 薬師寺 国安(やくしじ くにやす)

1950年生まれ。フリーVBプログラマ。高級婦人服メーカーの事務職に在職中、趣味でVBやActiveXに取り組み、記事を執筆。2003年よりフリー。.NETやRIAに関する執筆多数。Windowsストアアプリも多数公開中(約270本)。

 

Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)。

Microsoft MVP for Development Platforms - Windows Phone Development(Oct 2012-Sep 2013)。

Microsoft MVP for Development Platforms - Client Development(Oct 2013-Sep 2014)。

PROJECT KySSは、1997年に薬師寺聖と結成したコラボレーション・ユニット


前のページへ 1|2|3       

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。