如何自动将 Outlook 邮件保存到硬盘或磁盘?
作者:互联网
2026-04-13
无论是为了备份、工作凭证还是其他用途,您可能都需要将 Outlook 邮件保存到本地硬盘。手动将邮件从 Outlook 拖拽到磁盘,适合少量邮件的保存。那么,您是否了解如何自动将每封收到的邮件保存到硬盘呢?本文将为您介绍一段 VBA 代码,助您轻松在 Outlook 中实现这一功能。
自动将 Outlook 邮件保存到硬盘/磁盘
自动将 Outlook 邮件保存到硬盘/磁盘
本方法将为您介绍一段 VBA 代码,帮助您将 Outlook 每封新收到的邮件自动以独立的 HTML 文件格式保存到指定磁盘。请按照以下步骤操作:
1. 按下 "Alt“ + “F11" 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 展开 Project 1,双击“ThisOutlookSession”以打开窗口,然后将下方的 VBA 代码粘贴到 ThisOutlookSession 窗口中。如下图所示:
VBA:自动将 Outlook 邮件以 HTML 文件格式保存到磁盘
Private WithEvents InboxItems As Outlook.Items
Sub Application_Startup()
Dim xNameSpace As Outlook.NameSpace
Set xNameSpace = Outlook.Application.Session
Set InboxItems = xNameSpace.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub InboxItems_ItemAdd(ByVal objItem As Object)
Dim FSO
Dim xMailItem As Outlook.MailItem
Dim xFilePath As String
Dim xRegEx
Dim xFileName As String
On Error Resume Next
xFilePath = CreateObject("WScript.Shell").SpecialFolders(16)
xFilePath = xFilePath & "MyEmails"
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FolderExists(xFilePath) = False Then
FSO.CreateFolder (xFilePath)
End If
Set xRegEx = CreateObject("vbscript.regexp")
xRegEx.Global = True
xRegEx.IgnoreCase = False
xRegEx.Pattern = "||/||""|:|*|\|?"
If objItem.Class = olMail Then
Set xMailItem = objItem
xFileName = xRegEx.Replace(xMailItem.Subject, "")
xMailItem.SaveAs xFilePath & "" & xFileName & ".html", olHTML
End If
Exit Sub
End Sub 3. 保存 VBA 代码后,重新启动您的 Microsoft Outlook。
从现在起,每封新收到的邮件都将以独立的 HTML 文件格式,自动保存至“MyEmails”文件夹中。
注意:
(1)此 VBA 会在“文档”文件夹下新建一个名为“MyEmails”的文件夹。您可通过以下路径查找自动保存的邮件:C:Usersyour_user_nameDocumentsMyEmails
(2)此 VBA 仅适用于默认电子邮件帐户收件箱(Inbox)文件夹中的邮件。
相关标签:
相关推荐
专题
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
最新数据
相关文章
如何按类别打印 Outlook 日历?
如何在 Outlook 中始终使用指定账户发送新建邮件?
如何在 Outlook 中只查看未读邮件?
如何在 Microsoft Outlook 中关闭自动更正功能?
如何在 Outlook 中打印邮件时,避免两侧内容被裁剪?
如何在 Outlook 日历中隐藏全天事件?
如何在 Outlook 中获取邮件会话或对话中的附件?
如何在 Outlook 中将联系人关联到日程安排?
如何在 Outlook 邮件中进行绘图或涂鸦?
如何在 Outlook 中显示包含子文件夹的未读项目数量?
AI精选
