每当发送电子邮件时,我都希望将该电子邮件的副本与所有附件一起保存在本地文件夹中.
我不认为这可以在Outlook中使用自定义规则,但也许可以使用VBA脚本完成?
我使用Outlook和MS Exchange.
当然可以使用Application_ItemSend
事件过程来调用自定义过程,将自己发送的邮件保存到本地文件夹.
此代码位于"ThisOutlookSession"模块中.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Call SaveACopy(Item) End Sub Sub SaveACopy(Item As Object) Const olMsg As Long = 3 Dim m As MailItem Dim savePath As String If TypeName(Item) <> "MailItem" Then Exit Sub Set m = Item savePath = "c:\users\your_user_name\desktop\" '## Modify as needed savePath = savePath & m.Subject & Format(Now(), "yyyy-mm-dd-hhNNss") savePath = savePath & ".msg" m.SaveAs savePath, olMsg End Sub
您需要确保指定的路径是唯一的/ etc.,上面的示例相当粗糙.你还需要删除任何无法放入文件名的非法字符(斜杠,管道等)......
作为替代方案,我建议您定期存档您的文件夹.您可以将Outlook配置为将已发送邮件的副本保存到"已发送"文件夹,然后您应该能够存档该文件夹; 单独保存每个项目似乎不太理想.