vba从发送文件夹中删除电子邮件

时间:2017-04-14 14:45:05

标签: vba outlook outlook-vba

我希望在使用规则转发电子邮件后从“已发送邮件”文件夹中删除电子邮件。

我尝试使用其他帖子中的“brettdj”代码:Macro to delete an email但它根本不适用于我。

我正在寻找的是一个vba宏,可以在您运行带有规则的脚本时删除电子邮件。

任何想法我怎么能完成那个

提前致谢

1 个答案:

答案 0 :(得分:0)

您的联系人文件夹(地址簿)中没有相应的条目。 Recipients类的Add方法接受收件人的姓名;它可以是表示收件人的显示名称,别名或完整SMTP电子邮件地址的字符串。

Sub forwardEmail(itm As Outlook.MailItem)
   Dim oExplorer As Outlook.Explorer
   Dim oMail As Outlook.MailItem
   Dim oOldMail As Outlook.MailItem
   Set oExplorer = Application.ActiveExplorer
   If oExplorer.Selection.Item(1).Class = olMail Then
     Set oOldMail = oExplorer.Selection.Item(1)
     Set oMail = oOldMail.Forward
     oMail.Recipients.Add "test@gmail.com"
     oMail.Recipients.Item(1).Resolve
     If oMail.Recipients.Item(1).Resolved Then
       'delete forwarded email from sent items
        oMail.DeleteAfterSubmit = True

        oMail.Send
        'delete original email from inbox
        'oOldMail.Delete
     Else
         MsgBox "Could not resolve " & oMail.Recipients.Item(1).Name
     End If
   Else
     MsgBox "Not a mail item"
   End If
 End Sub