*

エクセルファイルをPDF化する

公開日: : Excel VBA

とりあえず動くやつ

事前準備

ダウンロード:BullZip
http://www.bullzip.com/products/pdf/download.php
http://bullzip-website.bullzip.netdna-cdn.com/download/pdf_free/Setup_BullzipPDFPrinter_10_6_0_2267_FREE.exe
exeを実行してインストールする

参照設定

BullZip のみ(チェック入れるリストの中にある、BullZip PdfWriter_lib等はチェック入れない)

動作

PDFにしたいエクセルを開いた状態で実行する
PDFはエクセルファイルがあるディレクトリに「同じ名前.pdf」で保存される

Private Sub PrintPDF()
Dim oPrinterSettings As Object
Dim sFileName As String
sFileName = ActiveWorkbook.Fullname
sFileName = Left(sFileName, Len(sFileName -4)) & ".pdf"

Set oPrinterSettings = CreateObject("Bullzip.PDFPrinterSettings")
With oPrinterSettings
.SetValue "Output", sFileName
.SetValue "ConfirmOverwrite", "yes"
.SetValue "ShowSettings", "never"
.SetValue "ShowPDF", "no"
.SetValue "ShowProgress", "no"
.SetValue "ShowProgressFinished", "yes"
.WriteSettings True
End With

ActiveSheet.PrintOut ActivePrinter:="Bullzip PDF Printer"

End Sub

気をつけるところ

連続で処理する場合は、PrintOut の処理が Settingsの書き換えを追い抜いてしまうので、処理を待たせるような対処が必要。

複数のエクセルファイルを一括処理する場合…C#版でやっている
http://wnqs.net/20140630/c/post_1020

admax_area



関連記事

no image

tmp

Dim str(1000, 2) As String Dim cnt  As Integer c

記事を読む

no image

メール作成

新規メールを作成する。 Dim strMOJI As String '本文 Dim strS

記事を読む

no image

mail

http://okwave.jp/qa/q7645239.html

記事を読む

admax_area



Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

admax_area



PAGE TOP ↑