2016-07-25 23 views
0

添付ファイルを特定のフォルダに保存するマクロがあります。 これは完全に次のコードで動作します: atmt.SaveAsFile添付ファイルからの添付ファイルの抽出

電子メールの中には、希望のファイルを含む電子メールの添付ファイルが含まれているものがあります。 このような第2レベルの添付ファイルはどのように抽出するのですか?

+1

添付されたメールをディスクに保存してからOutlookで開いてみましたか?そこから添付ファイルを保存することができます。 –

答えて

0

更新:ご意見ありがとうございます。次の作品:

For Each atmt In zMsg.Attachments 'Loop through attachments 

    atmt.SaveAsFile DestPath & atmt.FileName 
    Set zMsg2 = Application.CreateItemFromTemplate(DestPath & atmt.FileName) 

    For Each atmt2 In zMsg2.Attachments 
     atmt2.SaveAsFile DestPath & atmt2.FileName 
    Next 
    Set zMsg2 = Nothing 
    Kill DestPath & atmt.FileName 
Next 
0

メッセージをMSGファイル(Attachment.SaveAsFile)として保存し、Namespace.OpenSharedItemを使用してメッセージを開くことができます。

Outlookオブジェクトモデルでは、埋め込まれたメッセージの添付ファイルにファイルシステムに保存せずに直接アクセスすることはできません。 Redemptionをオプションとして使用すると、RDOAttachmentが公開されます。 EmbeddedMsgプロパティ(RDOMailオブジェクトを返します)。 Outlookメッセージは、RDOSessionオブジェクトと呼び出すGetRDOObjectFromOutlookObjectメソッドのインスタンスを作成することにより、Redemptionで再び開くことができます。