2016-07-25 109 views
0

我有將附件保存在特定文件夾中的宏。 它與以下代碼完美結合: atmt.SaveAsFile從附件中提取附件

但是,某些電子郵件包含一個包含所需文件的電子郵件附件。 我如何提取這樣的二級附件?

+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是一個選項,它將公開RDOAttachmentEmbeddedMsg財產(返回RDOMail對象)。通過創建RDOSession對象的實例和調用GetRDOObjectFromOutlookObject方法,可以在贖回中重新打開Outlook消息。