「PDFファイルを印刷する」
Excel2002でAcrobat5用に作ったものだが、多分 どのバージョンでも動きます。ただし、参照設定は多少違うので注意。
' 参照設定:Adobe Acrobat 5.0 Type Library Public Sub PrintPDFFile() Const FName As String = "F:\Book1.pdf" Dim AVDoc As Acrobat.CAcroAVDoc Dim PDDoc As Acrobat.CAcroPDDoc Dim R1 As Long Dim wkPage As Long ' PDFファイルを開く Set AVDoc = CreateObject("AcroExch.AVDoc") R1 = AVDoc.Open(FName, "") If Not CBool(R1) Then MsgBox "Openに失敗したため処理を中止します。" Exit Sub End If Set PDDoc = AVDoc.GetPDDoc() ' ページ数を取得する wkPage = PDDoc.GetNumPages() ' 印刷する R1 = AVDoc.PrintPagesSilent(0, wkPage - 1, 1, CLng(True), CLng(True)) If Not CBool(R1) Then MsgBox "印刷に失敗しました。" End If ' PDFファイルを閉じる AVDoc.Close CLng(False) End Sub
Acrobatがインストールされていることが前提。
PrintPagesSilentメソッドをPrintPagesメソッドにしても可。