Hvis du gerne vil flette alle elementerne fra flere Outlook-mapper og ikke sikre nogen duplikat, kan du bruge metoden introduceret i denne artikel. Det bruger VBA-kode til at hjælpe dig med at udføre det som en kork.

Til tider vil du muligvis flette emner fra flere Outlook-mapper, som at flette alle kontakter i flere Outlook-kontaktmapper. I denne situation, hvis der er nogle duplikerede kontakter blandt disse mapper, skal du håbe, at duplikaterne automatisk kan fjernes under fletning. Under denne omstændighed kan du bruge følgende VBA-kode til at realisere den uden besvær.
Flet emner fra flere mapper uden duplikater
- Til starstart med din Outlook-applikation.
- Derefter skal du få adgang til Outlook VBA-editoren ved at trykke på “Alt + F11” -tasten på Outlook-hovedskærmen.
- Dernæst skal du i vinduet “Microsoft Visual Basic for Applications” åbne et modul, der ikke bruges.
- Derefter skal du kopiere følgende VBA-kode til dette modul.
'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
- Senere skal du tjekke dine Outlook-makroindstillinger og sikre, at makroen er aktiveret.
- Endelig kan du prøve.
- For det første tilbage til det nye modulvindue.
- Tryk derefter på F5-tasten for at udløse denne makro.
- Derefter skal du vælge de to mapper, der skal flettes. Den første er kilden en, og den anden er den tarfå en.
- Derefter begynder Outlook at flytte alle elementerne fra kildemappen til tarfå en. I mellemtiden fjernes dubletter automatisk.
- I sidste ende kan du muligvis modtage en besked, der beder antallet af fjernede dubletter, som skærmbilledet nedenfor:
Små fejl kan føre til store sammenbrud
På trods af fyldte mængder af fremragende funktioner er Outlook stadig modtageligt for fejl og korruption. Måske har du stødt på forskellige Outlook-problemer. Mange brugere er tilbøjelige til at ignorere tilfældige fejl. Det er dog den lille fejl, der udløser alvorlige Outlook-nedbrud, hvilket vil bringe Outlook-filen i fare. Således skal du ikke se bort fra små fejl. I stedet bør du fjerne dem så hurtigt som muligt. Desuden må du hellere holde en apt PST-reparation værktøj, såsom DataNumen Outlook Repair. Via sin høje genopretningshastighed har dette værktøj overhalet sine jævnaldrende.
Forfatter Introduktion:
Shirley Zhang er ekspert i datagendannelse i DataNumen, Inc., som er verdens førende inden for datagendannelsesteknologier, herunder beskadiget sql og Outlook-reparationssoftwareprodukter. For mere information besøg www.datanumen.com

