Als u dubbele items in Outlook wilt verwijderen, is het handmatig één voor één zoeken en verwijderen een tijdrovende klus. In dit artikel leert u hoe u dit snel kunt doen met Outlook VBA.
In mijn vorige artikel - "Snel dubbele e-mails zoeken en verwijderen in Outlook”, Kunt u een truc leren om dubbele e-mails te vinden en te verwijderen, die eerst de e-mails sorteren op onderwerp, vervolgens op ontvangen tijd en vervolgens op bijlagen om de dubbele items te achterhalen en ten slotte de dubbele items selecteren en op de toets" Verwijderen "drukken. Hoewel deze methode een beetje handiger lijkt, is het veel lastiger in vergelijking met het gebruik van Outlook VBA. Met de volgende VBA-codes kunt u snel de dubbele items eenvoudig met één klik verwijderen, ongeacht e-mails, taken, contacten of afspraken. Lees nu verder om de codes in detail te krijgen.

Verwijder de dubbele Outlook-items in een map
- Begin met het opstarten van uw Outlook-programma.
- Druk vervolgens op de toetsen "Alt + F11".
- Dubbelklik in het volgende VBA-editorvenster om een module te openen die in gebruik is of voeg direct een nieuwe module in via “Invoegen”> “Module”.
- Kopieer en plak vervolgens de volgende VBA-codes in de module.
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
- Onderteken daarna deze macro digitaal en wijzig het beveiligingsniveau van uw Outlook-macro in laag.
- Later kunt u dit nieuwe VBA-project uitvoeren. Klik direct op het pictogram "Uitvoeren" in de werkbalk.
- Vervolgens moet u een map selecteren waaruit u dubbele items wilt verwijderen.
- Ten slotte worden de dubbele items in de geselecteerde map in één keer verwijderd.
Bescherm kwetsbare PST-gegevens
Omdat het PST-bestand vatbaar is voor corruptie, moet u veel moeite doen om uw PST-bestand te beschermen. U moet bijvoorbeeld voorkomen dat Outlook niet correct wordt afgesloten. Bovendien moet u een robuust Outlook-oplossing tool, zoals DataNumen Outlook Repair die uw PST op tijd kunnen redden.
Auteur Introductie:
Shirley Zhang is een expert op het gebied van gegevensherstel in DataNumen, Inc., de wereldleider in technologieën voor gegevensherstel, waaronder herstellen SQL Server en Outlook-reparatiesoftwareproducten. Voor meer informatie bezoek www.datanumen.com


