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

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

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

Author Sun Last modified

В 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», удобное дополнение, с его функциями «Организовать папки» и «Дубликаты писем», которые могут легко и быстро справиться с этой задачей.

Попрощайтесь с неэффективностью Outlook! Kutools for Outlook упрощает пакетную обработку электронных писем – теперь с бесплатными функциями, работающими на базе ИИ! Скачайте Kutools for Outlook прямо сейчас!!

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

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 с более чем100 невероятными функциями! Нажмите, чтобы скачать прямо сейчас!

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

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

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

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

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

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

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

Используйте Kutools на вашем языке – поддерживаются Английский, Испанский, Немецкий, Французский, Китайский и более40 других!

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

kutools for outlook features1 kutools for outlook features2

🚀 Скачайте все дополнения Office одним кликом

Рекомендуем: Kutools для Office (5-в-1)

Скачайте сразу пять установщиков одним кликом — Kutools для Excel, Outlook, Word, PowerPoint и Office Tab Pro. Нажмите, чтобы скачать прямо сейчас!

  • Все просто: скачайте все пять установочных пакетов одним действием.
  • 🚀 Готово для любой задачи Office: Установите нужные дополнения тогда, когда они вам понадобятся.
  • 🧰 Включено: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools для PowerPoint