如何通过 Outlook VBA 自动保存特定域中发件人的所有附件

立即分享:

如果您想让 Outlook 自动保存电子邮件地址在特定域中的发件人的所有附件,您可以阅读这篇文章。 在这里,我们将向您介绍一种快速方法。

也许您公司的所有员工都使用同一域中的电子邮件地址。 由于您经常互相发送带有各种附件的电子邮件,您可能希望 Outlook 自动保存此类电子邮件中的附件。 在这种情况下,Outlook 将被要求自动检查电子邮件的发件人域并自动保存附件。 现在,在下文中,我们将分享一段能够轻松实现它的VBA代码。

自动保存特定域中发件人的所有附件

  1. 首先,根据“运行Outlook VBA编辑器如何在 Outlook 中运行 VBA 代码“。
  2. 然后,将以下代码放入未使用的模块中。
Public WithEvents objInboxItems As Outlook.Items

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

Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
   Dim objMail As Outlook.MailItem
   Dim strSenderAddress As String
   Dim strSenderDomain As String
   Dim objAttachment As Attachment
   Dim strFolderPath As String
   Dim strFileName As String

   If Item.Class = olMail Then
      Set objMail = Item

      'Get sender domain
      strSenderAddress = objMail.SenderEmailAddress
      strSenderDomain = Right(strSenderAddress, Len(strSenderAddress) - InStr(strSenderAddress, "@"))

      'Change to the specific domain as per your needs
      If strSenderDomain = "datanumen.net" Then
         If objMail.Attachments.Count > 0 Then
            For Each objAttachment In objMail.Attachments
                'Change the folder path where you want to save attachments
                strFolderPath = "E:\Attachments\"
                strFileName = objMail.Subject & " " & Chr(45) & " " & objAttachment.FileName
                objAttachment.SaveAsFile strFolderPath & strFileName
            Next
         End If
      End If
   End If
End Sub

VBA 代码 - 自动保存特定域中发件人的所有附件

  1. 之后,重启 Outlook 以激活此宏。
  2. 从那时起,每当收到的电子邮件进入您的收件箱时,Outlook 都会自动检查发件人域。 如果它与预定义的域相同并且包含附件,Outlook 将自动将附件保存到特定的本地文件夹。自动保存的附件

切勿打开未知域中发件人的附件

建议不要轻易信任和下载来自未知域的附件。 这是因为它们可能带有恶意软件或病毒。 一旦打开它们,Outlook 文件可能会受到攻击。 换句话说,您可能会受到 Outlook 文件损坏的影响。 那个时候,甚至 扫描仪 无法帮助您。 您唯一的选择是使用更强大的工具或专门的 PST 恢复服务。

作者简介:

Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 腐败的中密度纤维板 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。