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

    「ちゃうちゃう!」で2つの文書を比較するWordマクロ

    2014/08/10 追記:ちゃうちゃう!がバージョンアップされま…

  2. Office関連

    1MBのWordファイルって何文字くらい?

    ZIP圧縮されたOOXML形式のWordファイルって1MBだと何文字分…

  3. Office関連

    SkyDriveの同期フォルダーのパスを取得するマクロ

    前回の記事ではSkyDriveの同期フォルダーのパスを取得するWord…

  4. Office関連

    Chrome DevTools ProtocolでEdgeを操作するVBAマクロ

    Microsoft Edgeの操作を自動化する際はWebDriverを…

  5. Office関連

    ConvertToTextメソッドを使ってテーブルを二次元配列に変換するWordマクロ

    WordのTableオブジェクトには、テーブルを解除して文字列に変換す…

  6. Office関連

    「EXCEL VBA 業務自動化 仕事の効率を劇的に上げるノウハウ」レビュー

    ※ 下記レビューはあくまでも個人的な感想です。2015年4…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP