如何使用 Outlook VBA 自动保存特定的电子邮件附件

立即分享:

许多用户希望 Outlook 可以自动查找附件名称中的特定单词,然后将特定附件保存到计算机上的本地文件夹中。 本文将教您如何使用 Outlook VBA 来完成它。

在日常工作中,如果收到的邮件中的附件不是很重要,我宁愿不保存到本地磁盘,直接在Outlook中阅读。 但是如果附件很重要,比如人事制度,月度工作报告,我会把它们保存到我电脑上的特定文件夹中。 在这种情况下,我希望将 Outlook 配置为自动将名称包含特定单词的电子邮件附件保存到某个文件夹。 所以我找到了一种用 Outlook VBA 实现它的快速方法。 以下是详细的 VBA 代码和步骤:

自动保存特定的电子邮件附件

  1. 首先,您应该启动 Outlook 并转到“开发人员”选项卡。
  2. 随后,单击“代码”组中的“Visual Basic”按钮。Visual Basic 按钮
  3. 然后在“Visual Basic”窗口中,您应该打开“ThisOutlookSession”项目并将以下代码复制到其中。
Public WithEvents olItems As Outlook.Items

Private Sub Application_Startup()
    Set olItems = Session.GetDefaultFolder(olFolderInbox).Items
End Sub

Private Sub olItems_ItemAdd(ByVal Item As Object)
    Dim NewMail As Outlook.MailItem
    Dim Atts As Attachments
    Dim Att As Attachment
    Dim strPath As String
    Dim strName As String
 
    If Item.Class = olMail Then
       Set NewMail = Item
    End If
 
    Set Atts = Item.Attachments
 
    If Atts.Count > 0 Then
       For Each Att In Atts
           'Replace "test" with what you want to look for in attachment name
           If InStr(LCase(Att.FileName), "test") > 0 Then
              'Use your wanted destination folder path to save the attachments
              strPath = "C:\Attachments\"
              strName = NewMail.Subject & " " & Chr(45) & " " & Att.FileName
              Att.SaveAsFile strPath & strName
           End If
       Next
    End If
End Sub

自动保存特定的电子邮件附件

  1. 之后,您应该签署此代码。
  • 首先,使用 Digital Certificate for VBA Projects 创建一个证书。VBA 项目的数字证书
  • 然后将证书分配给这个代码,如下图所示:签署此代码
  1. 之后,可以退出当前的“Visual Basic”窗口,单击“开发”选项卡下“代码”组中的“宏设置”按钮。仅启用数字签名的宏
  2. 从现在开始,Outlook 会自动将名称中带有特定单词的附件保存到您指定的本地文件夹中。

从严重的 Outlook 损坏中恢复

尽管拥有多种功能,但 Outlook 仍然容易损坏。 因此,您应该密切关注 Outlook 可能出现的所有问题,例如 PST 邮件错误, Outlook 没有响应等等。 当遇到错误时,您可以使用 Outlook 内置的修复工具 ScanPST.exe 来修复它们。 如果失败,则求助于更强大的工具。

作者简介:

Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复 SQL Server mdf文件问题 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。