跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在Outlook中将两个文件夹无重复地合并到一个文件夹?

Author: Sun Last Modified: 2025-08-22

在Outlook中,您可能拥有许多带有多个文件夹的邮件账户,在某些情况下,您希望将两个文件夹合并为一个,并删除重复的项目。如何快速完成这项任务呢?本文中,我将介绍一种VBA代码,帮助您尽可能快地在Outlook中处理它。

通过VBA代码无重复地合并两个文件夹

使用Kutools for Outlook合并多个文件夹并删除重复项


通过VBA代码无重复地合并两个文件夹

要将两个文件夹合并为一个并删除重复的项目,您可以按照以下步骤使用VBA代码来处理:

1. 按“Alt + F11”键打开“Microsoft Visual Basic for Applications”窗口。

2. 在左侧窗格中双击“Project1”下的“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

doc merge folders without duplicates 1

3. 点击“工具”>“引用”,在弹出的对话框中勾选“Microsoft Scripting Runtime”复选框。

doc merge folders without duplicates 2 doc arrow right doc merge folders without duplicates 3

4. 点击“确定”。现在按“F5”键运行代码。会弹出一个对话框,提醒您选择要合并的第一个文件夹(注意:第一个文件夹中的所有项目在与第二个文件夹合并后将被移除)。
doc merge folders without duplicates 4

5. 点击“确定”。在第二个弹出的对话框中,选择要比较并合并的第二个文件夹。
doc merge folders without duplicates 5

6. 点击“确定”。现在,第一个文件夹中的所有项目都将移动到第二个文件夹,并且重复的项目将被删除。
doc merge folders without duplicates 6


使用Kutools for Outlook合并多个文件夹并删除重复项

如果您不熟悉VBA代码,可以尝试使用“Kutools for Outlook”,这是一款方便的插件,其“整合文件夹”和“重复邮件”功能可以轻松快速地处理此任务。

告别Outlook效率低下的问题!Kutools for Outlook让批量邮件处理更轻松——现在还提供免费的AI功能!立即下载Kutools for Outlook!

合并多个文件夹

1. 点击“Kutools Plus”>“整合文件夹”,然后在“整合多个文件夹到一个文件夹”的对话框中,点击“添加”以将要合并的文件夹添加到列表中,并选择一个文件夹作为目标文件夹。
doc consolidate and remove duplicate 1

2. 点击“确定”>“确定”。现在,所选文件夹中的所有项目都已合并到指定的文件夹中。
doc consolidate and remove duplicate 2

删除重复项

3. 点击“Kutools”>“删除重复”>“重复邮件”。然后在“重复邮件”对话框中,勾选要去除重复项的文件夹。
doc consolidate and remove duplicate 3

4. 点击“下一步”。在“重复邮件设置”对话框中,指定用于比较邮件的标准。然后勾选“删除重复邮件”选项,并选择“单个文件夹内对比”。
doc consolidate and remove duplicate 4

5. 点击“下一步”>“下一步”,重复的邮件将被筛选出来。点击“删除重复邮件”按钮>“确定”以成功删除重复的邮件。
doc consolidate and remove duplicate 5 doc merge folders without duplicates 6


最佳 Office 办公效率工具

最新消息:Kutools for Outlook 推出免费版!

体验全新 Kutools for Outlook,超过100 种强大功能!立即点击下载!

🤖 Kutools AI 采用先进的 AI 技术,轻松处理邮件,包括答复、总结、优化、扩展、翻译和撰写邮件。

📧 邮箱自动化自动答复(支持 POP 和 IMAP) /计划发送邮件 /发送邮件时按规则自动抄送密送 / 自动转发(高级规则) / 自动添加问候语 / 自动将多收件人的邮件分割为单独邮件 ...

📨 邮件管理撤回邮件 / 按主题及其他条件阻止欺诈邮件 / 删除重复邮件 / 高级搜索 / 整合文件夹 ...

📁 附件增强批量保存 / 批量拆离 / 批量压缩 / 自动保存 / 自动拆离 / 自动压缩 ...

🌟 界面魔法😊更多美观酷炫的表情 /重要邮件到达时提醒 / 最小化 Outlook 而非关闭 ...

👍 一键高效操作带附件全部答复 / 防钓鱼邮件 / 🕘显示发件人时区 ...

👩🏼‍🤝‍👩🏻 联系人与日历批量添加选中邮件中的联系人 / 分割联系人组为单独的组 / 移除生日提醒 ...

可根据您偏好选择 Kutools 使用语言——支持英语、西班牙语、德语、法语、中文及40 多种其他语言!

只需点击一下即可立即激活 Kutools for Outlook。无需等待,立即下载,提升工作效率!

kutools for outlook features1 kutools for outlook features2

🚀 一键下载——获取所有 Office 插件

强烈推荐:Kutools for Office(五合一)

一键下载五个安装包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