如何在 Outlook 中将两个文件夹合并到一个新文件夹,并确保不出现重复项?
在 Outlook 中,您可能拥有多个包含众多文件夹的电子邮件帐户。有时,您可能希望将两个文件夹合并为一个,并自动移除重复项。如何才能高效完成这一操作?本文将为您介绍一段 VBA 代码,助您在 Outlook 中快速实现这一目标。
使用 Kutools for Outlook 合并多个文件夹并移除重复项
通过 VBA 代码无重复地合并两个文件夹
要将两个文件夹合并为一个并删除重复项,您可以按照以下步骤通过 VBA 代码操作:
1. 按下 "Alt + F11" 键,即可打开 “Microsoft Visual Basic for Applications“ 窗口。
2. 在左侧窗格中,双击 "Project 1" 下的 “ThisOutlookSession“,然后将以下代码复制并粘贴到右侧的脚本窗口中。
VBA:无重复地合并两个文件夹
Sub MergeOutlookFolders_WithoutDuplicates()
'UpdatebyExtendoffice20180521
Dim xSourceFolder As Outlook.Folder
Dim xTargetFolder As Outlook.Folder
Dim xCount, i As Long
Dim xItem As Object
Dim xSourceItem As Object
Dim xTargetItem As Object
Dim xDictionary As Scripting.Dictionary 'Object
Dim xStr As String
On Error Resume Next
Set xDictionary = New Scripting.Dictionary
Set xSourceFolder = Application.Session.PickFolder
Set xTargetFolder = Application.Session.PickFolder
xCount = 0
If xSourceFolder.DefaultItemType <> xTargetFolder.DefaultItemType Then
MsgBox "Error: The two folders are not in same type!", vbExclamation + vbOKOnly, "Kutools for Outlook"
Exit Sub
End If
For i = xSourceFolder.Items.Count To 1 Step -1
Set xSourceItem = xSourceFolder.Items.Item(i)
xSourceItem.Move xTargetFolder
Next
For i = xTargetFolder.Items.Count To 1 Step -1
Set xTargetItem = xTargetFolder.Items.Item(i)
Select Case xTargetItem.Class
Case olMail
With xTargetItem
xStr = .Subject & .Body & .SentOn
End With
Case olAppointment
With xTargetItem
xStr = .Subject & .Start & .Duration & .Location & .Body
End With
Case olContact
With xTargetItem
xStr = .FullName & .Email1Address & .Email2Address & .Email3Address
End With
Case olTask
With xTargetItem
xStr = .Subject & .StartDate & .DueDate & .Body
End With
End Select
If xDictionary.Exists(xStr) = True Then
xTargetItem.Delete
xCount = xCount + 1
Else
xDictionary.Add xStr, True
End If
Next i
If xCount <> 0 Then
MsgBox xCount & " duplicates removed when merging!", vbInformation + vbOKOnly, "Kutools for Outlook"
End If
End Sub 
3. 点击“工具”>“引用”,在弹出的对话框中勾选“Microsoft Scripting Runtime”选项。
![]() | ![]() | ![]() |
4. 点击“确定”。现在,按下“F5”键运行代码,系统将弹出对话框,提示您选择要合并的第一个文件夹(请注意:第一个文件夹中的所有项目在与第二个文件夹合并后将被移除)。
5. 点击“确定”。在第二个弹出的对话框中,选择您希望对比并合并的第二个文件夹。
6. 点击“确定”。此时,第一个文件夹中的所有项目将被移动到第二个文件夹,并自动去除重复项。
使用 Kutools for Outlook 合并多个文件夹并移除重复项
如果您不熟悉 VBA 代码,建议您尝试便捷的 Outlook 加载项——Kutools for Outlook。其“整合文件夹”和“重复邮件”实用工具,能够帮助您轻松高效地完成此任务。
告别 Outlook 低效!Kutools for Outlook 助您高效批量处理邮件——现已推出 30 天免费试用!立即下载 Kutools for Outlook!!
合并多个文件夹
1. 点击“KUTOOLS PLUS” > “整合文件夹”,在“整合多个文件夹到一个文件夹”对话框中,点击“添加”将需要合并的文件夹加入列表,并选择一个文件夹作为目标合并文件夹。
2. 点击“确定” > “确定”。此时,所选文件夹中的所有项目将被合并到指定文件夹中。
删除重复项
3. 点击“Kutools”>“删除重复项”>“重复邮件”。在弹出的“重复邮件”对话框中,勾选您想要删除重复项的文件夹。
4. 点击“下一步”。在“重复邮件设置”对话框中,设定用于对比邮件的条件,勾选“删除重复邮件”选项,并选择“单个文件夹内对比”。
5. 点击“下一步”>“下一步”,系统将自动筛选出重复邮件。点击“删除重复邮件”按钮,再点击“确定”,即可轻松删除重复邮件。

最佳办公效率工具
体验全新 Kutools for Outlook,畅享 100+ 强大功能!立即点击下载,不容错过!
🤖KUTOOLS AI:采用先进 AI 技术,轻松处理邮件,涵盖回复、摘要、优化、扩展、翻译及撰写等功能。
📧 邮件自动化:自动答复(支持 POP 和 IMAP)/定时发送邮件/发送邮件时按规则自动抄送密送/自动转发(高级规则)/自动添加称呼/自动将多收件人邮件拆分为单独信息……
📨 邮件管理:撤回邮件/按主题等条件拦截诈骗邮件/删除重复邮件/高级搜索/整合文件夹……
📁 附件增强:批量保存/批量分离/批量压缩/自动保存/自动拆离/自动压缩……
🌟 界面魔法:😊更多美观时尚表情/重要邮件到达时提醒您/最小化 Outlook 而不是直接关闭……
👍 一键精彩功能:带附件全部答复/反钓鱼邮件/🕘显示发送者当前时间时区……
👩🏼🤝👩🏻 联系人与日历:批量从选定邮件中提取添加联系人/将联系人组拆分为个人组/移除生日提醒……
在您的首选语言中畅享 Kutools —— 支持英语、西班牙语、德语、法语、中文等 40 多种语言!
一键解锁 Kutools for Outlook,告别等待,立即下载,让效率倍增!


🚀 一键下载 — 即可获取全部 Office 加载项
强烈推荐:Kutools for Office(5 合 1)
一键下载五个安装包,即可同时获得 Kutools for Excel、Outlook、Word、PowerPoint 和 Office Tab Pro。立即点击下载!
- ✅ 一键便捷:只需一次操作,即可下载全部五个安装包。
- 🚀 轻松应对各类 Office 任务:随时按需安装所需插件,助您高效办公,不容错过!
- 🧰 包含:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint


