Hvis du ønsker at fjerne dubletter i Outlook, vil det være ret besværligt at søge og fjerne dem én efter én. Dette indlæg vil lære dig, hvordan du hurtigt kan udføre det med Outlook VBA.
I min tidligere artikel - “Sådan finder du hurtigt og fjerner dublerede e-mails i Outlook”, kan du lære et trick til at finde og fjerne duplikerede e-mails, som først sorterer e-mails efter emne, derefter efter modtaget tid og derefter efter vedhæftede filer for at finde ud af duplikaterne og til sidst vælge de duplikerede e-mails og trykke på “Slet”-tasten. Selvom denne metode tilsyneladende er en smule mere praktisk, men den er langt mere besværlig sammenlignet med at bruge Outlook VBA. Ved hjælp af de følgende VBA-koder kan du hurtigt fjerne de duplikerede elementer med et enkelt klik, uanset e-mails, opgaver, kontakter eller aftaler. Læs nu videre for at få koderne i detaljer.

Fjern de dublerede Outlook-elementer i en mappe
- Til at begynde med skal du starte dit Outlook-program.
- Tryk derefter på “Alt + F11” -tasten.
- I det efterfølgende VBA-editorvindue skal du dobbeltklikke for at åbne et modul, der er i brug, eller indsætte et nyt modul direkte med "Indsæt" > "Modul".
- Kopier og indsæt derefter følgende VBA-koder i modulet.
Sub RemoveDuplicateItems()
Dim objFolder As Folder
Dim objDictionary As Object
Dim i As Long
Dim objItem As Object
Dim strKey As String
Set objDictionary = CreateObject("scripting.dictionary")
'Select a source folder
Set objFolder = Outlook.Application.Session.PickFolder
If Not (objFolder Is Nothing) Then
For i = objFolder.Items.Count To 1 Step -1
Set objItem = objFolder.Items.Item(i)
Select Case objFolder.DefaultItemType
'Check email subject, body and sent time
Case olMailItem
strKey = objItem.Subject & "," & objItem.Body & "," & objItem.SentOn
'Check appointment subject, start time, duration, location and body
Case olAppointmentItem
strKey = objItem.Subject & "," & objItem.Start & "," & objItem.Duration & "," & objItem.Location & "," & objItem.Body
'Check contact full name and email address
Case olContactItem
strKey = objItem.FullName & "," & objItem.Email1Address & "," & objItem.Email2Address & "," & objItem.Email3Address
'Check task subject, start date, due date and body
Case olTaskItem
strKey = objItem.Subject & "," & objItem.StartDate & "," & objItem.DueDate & "," & objItem.Body
End Select
strKey = Replace(strKey, ", ", Chr(32))
'Remove the duplicate items
If objDictionary.Exists(strKey) = True Then
objItem.Delete
Else
objDictionary.Add strKey, True
End If
Next i
End If
End Sub
- Derefter skal du underskrive denne makro digitalt og ændre dit Outlook-makrosikkerhedsniveau til lavt.
- Senere kan du køre dette nye VBA-projekt. Klik direkte på "Kør"-ikonet på værktøjslinjen.
- Efterfølgende bliver du bedt om at vælge en mappe, hvor du vil fjerne duplikerede elementer.
- Til sidst slettes de duplikerede elementer i den valgte mappe med det samme.
Beskyt sårbare PST-data
På grund af det faktum, at PST-filen er modtagelig for korruption, bør du derfor bruge mange kræfter på at beskytte din PST-fil. For eksempel bør du forhindre, at Outlook lukkes forkert. Desuden skal du forberede en robust Outlook-rettelse værktøj, såsom DataNumen Outlook Repair der vil være i stand til at redde din PST i tide.
Forfatter Introduktion:
Shirley Zhang er ekspert i datagendannelse i DataNumen, Inc., som er verdens førende inden for datagendannelsesteknologier, herunder genvinde SQL Server og Outlook-reparationssoftwareprodukter. For mere information besøg www.datanumen.com


