Как бързо да обедините елементи от множество папки без дубликати в Outlook

Споделете сега:

Ако искате да обедините всички елементи от множество папки на Outlook и да не осигурите дублиране, можете да използвате метода, представен в тази статия. Той използва VBA код, за да ви помогне да го постигнете като корк.

Бързо обединяване на елементи от множество папки без дубликати в Outlook

Понякога може да искате да обедините елементи от няколко папки на Outlook, като обединяване на всички контакти на няколко папки с контакти на Outlook. В тази ситуация, ако сред тези папки има няколко дублирани контакта, трябва да се надявате, че дубликатите могат да бъдат премахнати автоматично по време на обединяването. При това обстоятелство можете да използвате следния код на VBA, за да го реализирате с лекота.

Обединете елементи от множество папки без дубликати

  1. Към starС, стартирайте приложението си Outlook.
  2. След това трябва да осъществите достъп до редактора на Outlook VBA, като натиснете бутона „Alt + F11“ в главния екран на Outlook.
  3. След това в прозореца „Microsoft Visual Basic for Applications“ трябва да отворите модул, който не се използва.
  4. След това трябва да копирате следния VBA код в този модул.
'Here we take "merging two folders" as an example
Sub MergeOutlookFolders_WithoutDuplicates()
    Dim objSourceFolder As Outlook.Folder
    Dim objTargetFolder As Outlook.Folder
    Dim i, n, x As Long
    Dim objItem As Object
    Dim objDictionary As Object
    Dim strKey As String
 
    Set objSourceFolder = Application.Session.PickFolder
    Set objTargetFolder = Application.Session.PickFolder

    If objSourceFolder.DefaultItemType <> objTargetFolder.DefaultItemType Then
       MsgBox "Error: The two folders are not in same type!", vbExclamation + vbOKOnly
    Else
       'Merge the two folders
       For i = objSourceFolder.Items.count To 1 Step -1
           Set objItem = objSourceFolder.Items.Item(i)
           objItem.Move objTargetFolder
       Next i
 
       Set objDictionary = CreateObject("scripting.dictionary")
 
       'Remove the duplicates
       x = 0
       For n = objTargetFolder.Items.count To 1 Step -1
           Set objItem = objTargetFolder.Items.Item(n)
 
           Select Case objItem.Class
                  Case olMail
                       strKey = objItem.Subject & "," & objItem.Body & "," & objItem.SentOn
                  Case olAppointment
                       strKey = objItem.Subject & "," & objItem.Start & "," & objItem.Duration & "," & objItem.Location & "," & objItem.Body
                  Case olContact
                       strKey = objItem.FullName & "," & objItem.Email1Address & "," & objItem.Email2Address & "," & objItem.Email3Address
                  Case olTask
                       strKey = objItem.Subject & "," & objItem.StartDate & "," & objItem.DueDate & "," & objItem.Body
           End Select
 
           strKey = Replace(strKey, ", ", Chr(32))
 
           If objDictionary.Exists(strKey) = True Then
              objItem.Delete
              x = x + 1
           Else
              objDictionary.Add strKey, True
           End If
      Next n
 
      'Prompt you of the count of removed duplicates
      If x <> 0 Then
         MsgBox x & " duplicates removed when merging!", vbInformation + vbOKOnly
      End If
    End If
End Sub

VBA код - обединяване на елементи от множество папки без дубликати

  1. По-късно трябва да проверите настройките на макроса на Outlook, като се уверите, че макросът е активиран.
  2. Накрая можете да опитате.
  • Първо, обратно към новия прозорец на модула.
  • След това натиснете бутона F5, за да задействате този макрос.
  • След това трябва да изберете двете папки, които да бъдат обединени. Първият е изходният, а вторият е tarВземи един.
  • След това Outlook ще започне да премества всички елементи от папката източник в tarВземи един. Освен това дубликатите ще бъдат премахнати автоматично.
  • В крайна сметка може да получите съобщение, подсказващо броя на премахнатите дубликати, като екранната снимка по-долу:Съобщение, подканващо броя на премахнатите дубликати

Малките грешки могат да доведат до големи сривове

Въпреки че е зареден с много отлични функции, Outlook все още е податлив на грешки и корупция. Може би сте срещали различни проблеми с Outlook. Много потребители са склонни да игнорират случайните грешки. Именно малката грешка предизвиква сериозни сривове в Outlook, което ще застраши файла на Outlook. По този начин не трябва да пренебрегвате малки грешки. Вместо това трябва да ги премахнете възможно най-скоро. Освен това, по-добре запазете подходяща PST ремонт инструмент, като DataNumen Outlook Repair. Благодарение на високата си степен на възстановяване, тази помощна програма се премества над своите връстници.

Въведение на автора:

Шърли Джанг е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително повреден sql и outlook софтуерни продукти за ремонт. За повече информация посетете WWW.datanumen.com

Споделете сега:

Коментарите са забранени.