【VB.Net】ExcelをPDF変換

ExcelからPDFを出力するコード。エクセル操作に必要な各種変数は先に宣言、格納されている前提です。今回は以下の変数です。

Friend xlsApplication As Application
Friend xlsWorkbook  As Application
Friend xlsActiveSheet As Application

xlsApplication = CreateObject("Excel.Application")
xlsWorkbook = xlsApplication.Workbooks(1)
xlsActiveSheet = CType(xlsWorkbook.Worksheets(1), Worksheet)

シートごとに作成

Public Function PdfOut(ByVal wFilePath As String) As Boolean

    Dim wFile As String
    wFile=System.IO.Path.GetFileName(wFilePath)

    Try
       xlsActiveSheet.ExportAsFixedFormat(Type:=0, _
                                          Filename:=wFile, _
                                          Quality:=0, _
                                          IncludeDocProperties:=True, _
                                          IgnorePrintAreas:=False, _
                                          OpenAfterPublish:=False)
       PdfOut = True

     Catch ex As Exception

        MessageBox.Show(ex.Message, System.Windows.Forms.Application.ProductName, _
                        MessageBoxButtons.OK, MessageBoxIcon.Information)

        PdfOut = False

     End Try

Exit_Sub:

End Function

ブックまるごと作成

Public Function PdfOut(ByVal wFilePath As String) As Boolean


        Dim wFile As String
        wFile =System.IO.Path.GetFileName(wFilePath)

        Try
                xlsApplication.ActiveWorkbook.ExportAsFixedFormat(Type:=0, _
                                                Filename:=wFile, _
                                                Quality:=0, _
                                                IncludeDocProperties:=True, _
                                                IgnorePrintAreas:=False, _
                                                OpenAfterPublish:=False)
            PdfOut = True

        Catch ex As Exception

            MessageBox.Show(ex.Message, System.Windows.Forms.Application.ProductName, _
                            MessageBoxButtons.OK, MessageBoxIcon.Information)

            PdfOut = False

        End Try

Exit_Sub:

End Function

パラメーター説明

引数説明
typexlTypePDF(0) または xlTypeXPS(1) を指定
FileName保存するファイルの名前を示す文字列
QualityxlQualityStandard(0) または xlQualityMinimum(1)
IncludeDocPropertiesドキュメント プロパティを含めるかどうか
IgnorePrintAreas発行する場合に印刷範囲を無視するかどうか
From発行を開始するページのページ番号
省略時は先頭ページ
To発行を終了するページの番号を指定
省略時は最終ページ
OpenAfterPublish発行後にビューアーにファイルを表示するかどうか
FixedFormatExtClassPtrFixedFormatExt クラスへのポインター