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関連

    「クラシックスタイルメニュー for Office 2010」のOffice 2013対応状況

    私が下記ページで公開しているフリーソフト「クラシックスタイルメニュー …

  2. Office関連

    IEサポート終了でVBAマクロはどうなるの?

    ※下記情報は2021年5月時点の情報で、今後状況が変わっていく可能性が…

  3. Office関連

    Office 365 unified APIをVBAから呼び出す

    前回の記事で、VBAからOffice 365 APIを呼び出す手順につ…

  4. Office関連

    PDFのしおり情報を出力するVBAマクロ

    Acrobatフォーラムの下記スレッドで当ブログへのリンクが貼られてい…

  5. Office関連

    OfficeのコマンドID(コントロールID)リストがGitHubで公開されました。

    前回の記事でも触れていますが、メインストリームサポート期間内のOffi…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP