EXCEL VBA シート・ブックをPDFに出力・変換・一括(PDF・XPS)「ExportAsFixedFormatメゾット」

 

EXCEL VBA シート・ブックをPDFに出力・変換・一括(PDF・XPS)「ExportAsFixedFormatメゾット」

 

 

 ●はじめに
ここ最近では、社内でもペーパーレスの推進で、紙による出力が制限されている企業が見受けれます。EXCELファイルやEXCEL VBAで作成した表を出力する際は、紙によるプリントアウトではなく、電子データ(PDF)による出力ですとペーパーレスの推進に繋がります。EXCEL VBAでPDF出力する際は、「ExportAsFixedFormatメゾット」を利用します。この「ExportAsFixedFormatメゾット」は、PDFとXPSの2種類の電子ペーパーを選択する事ができます。それでは、PDF・XPSの出力方法(ペーパーレス)を説明いたします。

 

 

 ●書式の説明 【 ExportAsFixedFormat メソッド 】

【EXCELデータのブックまたは、シートをPDF・XPS形式に出力する時に使用します】

ExportAsFixedFormat(Type,FileName,Quality,includedocproperties,
ignoreprintareas, From,To,openafterpublish,FixedFormatExtClassPtr)

①使用例:ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=”c:\ファイル名.pdf”
※アクティブシートをPDFファイルに出力

②使用例:ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=”c:\ファイル名.pdf”,From:=2,To:=6
※アクティブシートの2ページから6ページをPDFファイルに出力

 

 

パラメーターデータ型説明(定数)使用例
TypeXlFixedFormatTypexlTypePDF (PDFファイル)または、Xltypexps(Xpsファイル)を指定します。Type:=xlTypePDF
FileNameVariantファイル名または、パスを含めたファイル名を設定します。パスを指定しない場合は、カレントフォルダーを指定します。Filename:="c:\ファイル名.pdf",
QualityVariantファイルの品質をしてします。xlQualityStandard(標準品質)
xlQualityMinimum
(最小限品質)
Quality:= xlQualityStandard
IncludeDocPropertiesVariantファイルに文書のプロパティを含めるか指定します。
True(含める)
False(含めない)
IncludeDocProperties:=True
IgnorePrintAreasVariant設定している員サル領域を無視するかしてします。
True(無視する)
False(無視しない)
IgnorePrintAreas:=False
FromVariant変換する開始ページを指定します。省略で先頭のページからFrom:=3
ToVariant変換する終了ページを指定します。省略で最後のページまでTo:=10

 

 

 

EXCEL(エクセル)ファイルをPDF/XPSへ変換

 

 ●プログラム説明 (サンプルプログラム①)

下記のサンプルプログラムは、EXCELファイルをPDF/XPSへ変換するプログラムです。実行後、出力する種類の選択を行います。(0:PDF・1:XPS)を選択すると該当するファイルに出力する事ができます。

 

 

 

 

●実行前~実行後 ※プログラム実行を実行しますと、出力するファイルの種類(PDF/Xps)をいづれかを選択し、選択したファイルの種類で出力されました。
(画面クリックして拡大)

 

 

 

EXCEL(エクセル)ファイルをページ指定してPDFファイルに変換

 

 

 ●プログラム説明 (サンプルプルグラム②)

下記のサンプルプログラムは、変換するPDFファイルのページ範囲を指定してPDFファイルを作成するプログラムです。実行をPDF化するEXCELファイル先頭ページ番号を最終ページ番号を入力して、指定されたページ範囲でPDFファイルが作成されます。なお、入力されたページ番号については、正式な範囲内のみ実行されるようにチェック機能を追加しています。

※下図は、EXCELシートに月ごとに1~12月のデータが12ページ分あります。(下表は一部)の1~12の間のページ番号を指定します。

 

 

 

 ●実行前~実行後 ※プログラム実行後、EXCELシートに12ページ分あるページの先頭ページ番号と最終ページ番号を入力します(1~12の範囲)入力を指定した範囲(4~6ページ)がPDFファイルに出力されました。
(画面クリックして拡大)

 

 

最後まで、ご覧いただきまして誠に有難うございました。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。