Перейти к содержимому

Как объединить две папки без дубликатов в одну папку в Outlook?

Author: Sun Last Modified: 2025-06-05

В Outlook у вас может быть много учетных записей электронной почты с множеством папок, и в некоторых случаях вы хотите объединить две папки в одну и удалить повторяющиеся элементы. Как быстро решить эту задачу? В этой статье я представляю код VBA, который поможет вам справиться с этим как можно быстрее в Outlook.

Объединение двух папок без дубликатов в одну с помощью кода VBA

Объединение нескольких папок и удаление дублирующихся элементов с помощью Kutools для Outlook


Объединение двух папок без дубликатов в одну с помощью кода VBA

Чтобы объединить две папки в одну и удалить повторяющиеся элементы, вы можете сделать это с помощью кода VBA, выполнив следующие шаги:

1. Нажмите клавиши «Alt + F11», чтобы открыть окно «Microsoft Visual Basic для приложений».

2. Дважды щелкните «ThisOutlookSession» из «Project1» в левой панели, затем скопируйте и вставьте приведенный ниже код в правое окно скрипта.

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. Нажмите «OK». Теперь нажмите клавишу «F5», чтобы запустить код. Появится диалоговое окно, напоминающее вам выбрать первую папку, которую вы хотите объединить (примечание: все элементы в первой папке будут удалены после объединения со второй папкой).
doc merge folders without duplicates 4

5. Нажмите «OK». Во втором всплывающем диалоговом окне выберите вторую папку, с которой хотите сравнить и объединить.
doc merge folders without duplicates 5

6. Нажмите «OK». Теперь все элементы из первой папки будут перемещены во вторую папку, а дубликаты будут удалены.
doc merge folders without duplicates 6


Объединение нескольких папок и удаление дублирующихся элементов с помощью Kutools для Outlook

Если вы не знакомы с кодом VBA, попробуйте использовать «Kutools для Outlook», удобное дополнение, с его функциями «Организовать папки» и «Дубликаты писем», которые могут легко и быстро справиться с этой задачей.

Раскройте максимальную эффективность электронной почты с Kutools для Outlook! Получите доступ к 70 мощным функциям абсолютно бесплатно навсегда. Скачайте бесплатную версию прямо сейчас!

Объединение нескольких папок

1. Нажмите «Kutools Plus» > «Организовать папки», затем в диалоговом окне «Организовать несколько папок в одну» нажмите «Добавить», чтобы добавить папки, которые вы хотите объединить в список, и выберите папку в качестве целевой папки.
doc consolidate and remove duplicate 1

2. Нажмите «OK» > «OK». Теперь все элементы в выбранных папках были объединены в указанную папку.
doc consolidate and remove duplicate 2

Удаление дублирующихся элементов

3. Нажмите «Kutools» > «Удалить дубликаты» > «Дубликаты писем». Затем в диалоговом окне «Дубликаты писем» отметьте папку, где вы хотите удалить дубликаты.
doc consolidate and remove duplicate 3

4. Нажмите «Далее». В диалоговом окне «Настройки дублирующихся сообщений» укажите критерии, которые вы будете использовать для сравнения писем. Затем отметьте опцию «Удалить дублированные электронные письма» и выберите «Сравнить для дубликатов писем в пределах одной папки».
doc consolidate and remove duplicate 4

5. Нажмите «Далее» > «Далее», и дублирующиеся письма будут отфильтрованы. Нажмите кнопку «Удалить дублирующееся сообщение» > «OK», чтобы успешно удалить дублирующиеся письма.
doc consolidate and remove duplicate 5 doc merge folders without duplicates 6


Лучшие инструменты для повышения продуктивности в Office

Срочные новости: Kutools для Outlook запускает бесплатную версию!

Оцените совершенно новую бесплатную версию Kutools для Outlook с более чем70 потрясающими функциями — пользуйтесь ими НАВСЕГДА! Нажмите, чтобы скачать прямо сейчас!

🤖 Kutools AI : Использует передовые технологии искусственного интеллекта для легкой работы с Email: отвечает, резюмирует, оптимизирует, расширяет, переводит и составляет письма.

📧 Автоматизация Email: Автоответчик (доступно для POP и IMAP) / Запланировать отправку писем / Авто Копия/Скрытая копия по правилу при отправке писем / Автоматическое перенаправление (Расширенное правило) / Автоматическое добавление приветствия / Автоматическое разделение писем с несколькими получателями на отдельные сообщения ...

📨 Управление Email: Отозвать письмо / Блокировать мошеннические письма по теме и другим параметрам / Удалить дубликаты писем / Расширенный Поиск / Организовать папки ...

📁 Вложения Pro: Пакетное сохранение / Пакетное открепление / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие ...

🌟 Магия интерфейса: 😊Больше красивых и крутых Эмодзи / Напоминание о важных письмах / Сворачивайте Outlook вместо закрытия ...

👍 Мгновенные действия: Ответить всем с вложениями / Антифишинговые Email / 🕘Показать часовой пояс отправителя ...

👩🏼‍🤝‍👩🏻 Контакты и Календарь: Пакетное добавление контактов из выбранных писем / Разделить группу контактов на отдельные группы / Удалить напоминание о дне рождения ...

Мгновенно активируйте Kutools для Outlook одним кликом. Не ждите — скачайте сейчас и повысьте свою эффективность!

kutools for outlook features1 kutools for outlook features2