Office関連

PDFMakerアドインを利用してメールをPDF化するOutlookマクロ

AcrobatのOutlook用COMアドイン(Acrobat PDFMaker Office COM Addin)を調べてみると、「CreatePDFFromEntryID」という、いかにもアイテムのEntryIDを渡せばPDF化してくれそうなメソッドが用意されていたので、さっそく試してみました。

Public Sub Sample()
'選択中のメールをPDF化
  CreatePdfUsingPDFMaker Application.ActiveExplorer.Selection.Item(1).EntryID, _
                         False, _
                         "C:\Test\SamplePDF.pdf"
End Sub

Private Sub CreatePdfUsingPDFMaker(ByVal ItemEntryID As String, _
                                   ByVal IsFolder As Long, _
                                   ByVal OutPdfPath As String)
'Acrobat PDFMaker Office COM Addinを使用してPDF出力
  Dim ad As COMAddIn
  Dim pdfm As Object 'PDFMOUTLOOKLib.PDFMaker
  
  Set pdfm = Nothing '初期化
  For Each ad In Application.COMAddIns
    If LCase(ad.ProgId) = "pdfmoutlook.pdfmoutlook" Then
      Set pdfm = ad.Object
      Exit For
    End If
  Next
  If pdfm Is Nothing Then
    MsgBox "PDFMakerアドインが見つかりませんでした。" & vbNewLine & _
           "処理を中止します。", vbExclamation + vbSystemModal
    Exit Sub
  End If
  pdfm.CreatePDFFromEntryID ItemEntryID, IsFolder, OutPdfPath
End Sub

上記マクロでPDF化したPDFがコチラ↓

COMアドイン側で何らかのエラーが発生すると、以降の処理が止まってしまうようですが、大体は上手くPDF化してくれるようです。

Presentation Translatorが公開されました。前のページ

【感想】特別展「深海2017」に行ってきたよ(1)次のページ

関連記事

  1. Office関連

    Computer Vision APIを使って画像から文字列を取得するVBAマクロ

    前々回の記事で、Fiddlerを使ってMicrosoft Cognit…

  2. Office関連

    [Office 2013]コントロール日英比較表

    日本語版と英語版のOffice 2013でコントロール(コマンド)名や…

  3. Office関連

    Adobe Reader XIを利用してPDFファイルのページ数を取得するVBAマクロ

    先日Adobe Readerを利用してPDFファイルのページ数を取得す…

  4. Office関連

    ポータブル デバイスからファイルをコピーするVBAマクロ

    mougにあった質問関連のメモです。ポータブル デバイスか…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP