首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >展望2019附件

展望2019附件
EN

Stack Overflow用户
提问于 2020-04-22 18:49:57
回答 1查看 202关注 0票数 0

我想知道,这在Outlook 2019 /Office 365中是否可行?

我的目标是找到解决以下问题的方法

  1. 将附件从收件箱保存到C驱动器上的C:\temp文件夹
  2. 从收件箱中剥离邮件详细信息&从收件箱中删除邮件

我想要完成这项工作,需要一个脚本和outlook规则来小心。如果有人能帮我的话。

谢谢

RL

EN

回答 1

Stack Overflow用户

发布于 2020-04-22 19:41:08

您可以使用救济金类的MailItem方法,该方法将Microsoft项保存到指定路径并以指定文件类型的格式保存。如果未指定文件类型,则使用MSG格式(.msg)。

要处理所有传入项,您需要订阅NewMailEx事件,当新消息到达收件箱并在客户端规则处理发生之前触发该事件。您可以使用EntryIDCollection数组中返回的条目ID来调用NameSpace.GetItemFromID方法并处理该项。此事件对Microsoft处理的每个接收到的项触发一次。该项可以是几种不同的项类型之一,例如,MailItem、MeetingItem或SharingItem。EntryIDsCollection字符串包含对应于该项的条目ID。

代码语言:javascript
复制
Private Sub outApp_NewMailEx(ByVal EntryIDCollection As String)
    Dim mail As Object
    Dim oAttachment As Outlook.Attachment

    Set mail = Application.Session.GetItemFromID(EntryIDCollection )

    Dim sSaveFolder As String
    sSaveFolder = "C:\Temp"
    For Each oAttachment In mail.Attachments
       oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName
    Next

End Sub

另一种方法是创建一个可以分配给规则的VBA子。VBA示例可能如下所示:

代码语言:javascript
复制
Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem)
  Dim oAttachment As Outlook.Attachment
  Dim sSaveFolder As String
  sSaveFolder = "C:\Users\DT168\Documents\outlook-attachments\"
  For Each oAttachment In MItem.Attachments
    oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName
  Next
End Sub

自动下载Outlook附件到带有VBA和rule的文件夹文章中阅读更多有关这方面的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61372840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档