如何自动将Outlook中的邮件导出到Excel?
通常,您可以使用导入/导出功能将Outlook中的邮件导出到Excel。但是,如果您需要在邮件到达时自动将其导出到Excel文件中,Outlook并没有提供内置的解决方案。本文介绍了两种实现此目的的方法:
使用VBA自动将收件箱中的新邮件导出到Excel (手动且繁琐)
使用Kutools for Outlook快速将选定文件夹中的所有邮件导出到Excel报告 👍(快速且简单)
使用VBA自动将收件箱中的新邮件导出到Excel
如果您需要一种自动化的方式来将新邮件导出到Excel,可以使用以下VBA代码。该方法会监控收件箱,并在新邮件到达时立即将其详细信息导出到Excel文件中。
步骤1:准备Excel文件
在执行VBA代码之前,请先设置一个Excel工作簿以存储导出的邮件数据。在第一行中,包含以下列标题:序列、发件人名称、发件人电子邮箱、主题和接收时间。
步骤2:在Outlook中打开VBA编辑器
1. 按 Alt + F11 打开Microsoft Visual Basic for Applications窗口。
2. 在“Project1 (VbaProject.OTM)”窗格中,展开“Microsoft Outlook对象”,然后双击“ThisOutlookSession”。
步骤3:插入VBA代码
复制并将以下VBA代码粘贴到模块中:
Public WithEvents GMailItems As Outlook.Items
Private Sub Application_Startup()
Set GMailItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub GMailItems_ItemAdd(ByVal Item As Object)
Dim xMailItem As Outlook.MailItem
Dim xExcelFile As String
Dim xExcelApp As Excel.Application
Dim xWb As Excel.Workbook
Dim xWs As Excel.Worksheet
Dim xNextEmptyRow As Integer
On Error Resume Next
If Item.Class <> olMail Then Exit Sub
Set xMailItem = Item
' Update this path with your actual Excel file path
xExcelFile = "C:\Users\DT168\Desktop\split document\kto-data.xlsx"
If IsWorkBookOpen(xExcelFile) = True Then
Set xExcelApp = GetObject(, "Excel.Application")
Set xWb = GetObject(xExcelFile)
If Not xWb Is Nothing Then xWb.Close True
Else
Set xExcelApp = New Excel.Application
End If
Set xWb = xExcelApp.Workbooks.Open(xExcelFile)
Set xWs = xWb.Sheets(1)
xNextEmptyRow = xWs.Range("B" & xWs.Rows.Count).End(xlUp).Row + 1
With xWs
.Cells(xNextEmptyRow, 1) = xNextEmptyRow - 1
.Cells(xNextEmptyRow, 2) = xMailItem.SenderName
.Cells(xNextEmptyRow, 3) = xMailItem.SenderEmailAddress
.Cells(xNextEmptyRow, 4) = xMailItem.Subject
.Cells(xNextEmptyRow, 5) = xMailItem.ReceivedTime
End With
xWs.Columns("A:E").AutoFit
xWb.Save
End Sub
Function IsWorkBookOpen(FileName As String)
Dim xFreeFile As Long, xErrNo As Long
On Error Resume Next
xFreeFile = FreeFile()
Open FileName For Input Lock Read As #xFreeFile
Close xFreeFile
xErrNo = Err
On Error GoTo 0
Select Case xErrNo
Case 0: IsWorkBookOpen = False
Case 70: IsWorkBookOpen = True
Case Else: Error xErrNo
End Select
End Function
步骤4:启用Microsoft Excel对象库
1. 在Microsoft Visual Basic for Applications窗口中,点击“工具” > “引用”。
2. 在“References - Project1”对话框中,向下滚动并勾选“Microsoft Excel对象库”选项。
3. 点击“确定”以应用更改。
步骤5:保存并重新启动Outlook
1. 保存VBA代码并关闭编辑器。
2. 重新启动Outlook以使更改生效。
结果:
从现在开始,每封到达收件箱的新邮件都会自动导出到指定的Excel工作簿中。
VBA方法的局限性:
- ❌ 仅适用于一个收件箱:此方法仅跟踪默认收件箱中的新邮件。如果您有多个账户,它不会捕获其他账户的邮件。
- ❌ 需要启用宏的Outlook:VBA宏必须启用才能运行,这可能会带来安全问题。
- ❌ 文件路径依赖:如果Excel文件被移动或删除,代码将失败。
- ❌ 需要手动设置:用户必须手动输入Excel文件路径并设置VBA环境。
📊 使用 Kutools 实现更智能的邮件统计
使用 Kutools for Outlook 的 统计 功能,轻松跟踪和分析您的邮件活动。现在可以按天、周或月统计已接收的邮件数量,并以清晰、专业的图表查看结果!只需点击几下,即可简化邮件管理并获取有价值的见解。

使用Kutools for Outlook快速将选定文件夹中的所有邮件导出到Excel报告 👍
如果您需要一种无需使用VBA即可从任何文件夹(收件箱、已发送邮件、自定义文件夹)导出邮件的简便方法,Kutools for Outlook的快速报告功能提供了一个简单的解决方案。
使用Kutools for Outlook解锁无与伦比的邮件处理效率!永久免费获取 70 项强大功能。立即下载免费版本!
步骤1:选择文件夹并启用快速报告功能
1. 打开Outlook并导航到要导出的文件夹(收件箱、发件箱、已发送邮件等)。
2. 点击 Kutools Plus > 报告 > 快速报告。
步骤2:选择保存位置
1. 在“保存报告”窗口中,选择一个位置并输入导出的文件名。
2. 点击保存。
步骤3:打开导出的报告
将出现一条确认消息。点击“是”以打开导出的文件。
结果:
所选文件夹中的所有邮件都将导出到一个Excel友好的XML文件中,显示发件人、主题、接收时间等信息。
Kutools for Outlook方法的优势:
- ✅ 适用于任何文件夹:从收件箱、已发送邮件、发件箱或自定义文件夹导出邮件。
- ✅ 无需VBA:无需启用宏或编辑代码。
- ✅ 多账户支持:轻松导出多个电子邮件账户的邮件。
- ✅ 节省时间:只需几次点击即可生成即时报告。
- ✅ 可定制的数据导出:选择要包括的详细信息(主题、发件人、日期等)。
您应该使用哪种方法?
以下是这两种方法的比较,帮助您决定哪种方法最适合您的需求:
方法 | 适用场景 | 易用性 | 效率 |
---|---|---|---|
使用VBA代码(自动化但复杂) | 自动导出收件箱中的新邮件 | ⭐⭐ | ⭐⭐⭐⭐ |
使用Kutools for Outlook(简单且灵活) | 快速导出选定文件夹中的所有邮件 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
通过选择合适的方法,您可以根据自己的工作流程需求高效地将Outlook邮件导出到Excel!
相关文章
- 在Outlook中将邮件正文表格导出到Excel
- 当您收到一封包含一些表格的邮件时,有时您可能需要将邮件正文中所有的表格导出到Excel工作表中。通常情况下,您可以复制并粘贴这些表格到工作表中,但在这里,我将介绍一种有效的方法来解决这一问题,特别是当需要导出多个表格时。
- 在Outlook中提取或导出任务列表到Excel
- 在使用Outlook时,您可以将任务列表提取到Excel以供其他用途。利用Outlook强大的导出功能,您可以轻松将任务列表导出到Excel。请按照以下教程操作。
- 在Outlook中导出带有照片的联系人信息
- 当您从Outlook导出联系人到文件时,只能导出联系人的文本信息。但是,有时您还需要导出照片以及联系人的文本信息,那么如何在Outlook中处理这个任务呢?
- 从Outlook导出文件夹结构到Excel
- 本文将介绍如何将Outlook账户的文件夹结构导出到Excel文件中。请按照本文的详细说明进行操作。
最佳办公生产力工具
重磅消息:Kutools for Outlook 推出免费版本!
体验全新 Kutools for Outlook 免费版本,拥有 70 多项令人惊叹的功能,永久免费使用!立即点击下载!
🤖 Kutools AI :利用先进的人工智能技术轻松处理电子邮件,包括回复、总结、优化、扩展、翻译和撰写邮件。
📧 邮件自动化:自动答复(支持 POP 和 IMAP) / 定时发送邮件 / 按规则自动抄送密送 / 自动转发(高级规则) / 自动添加问候语 / 自动将多收件人邮件拆分为单独消息 ...
📨 邮件管理:撤回邮件 / 按主题和其他条件阻止垃圾邮件 / 删除重复邮件 / 高级搜索 / 整合文件夹 ...
📁 附件增强功能:批量保存 / 批量拆离 / 批量压缩 / 自动保存 / 自动拆离 / 自动压缩 ...
🌟 界面魔法:😊更多漂亮酷炫的表情符号 / 当重要邮件到达时提醒您 / 最小化 Outlook 而不是关闭 ...
👍 一键奇效:带附件回复所有人 / 反钓鱼邮件 / 🕘显示发件人的时区 ...
👩🏼🤝👩🏻 联系人和日历:从选定的邮件中批量添加联系人 / 将联系人组拆分为单独的组 / 移除生日提醒 ...
单击即可立即解锁 Kutools for Outlook。不要再等待,现在就下载并提升您的效率!

