Pokud chcete v Outlooku odstranit duplicitní položky, jejich vyhledávání a odstraňování po jedné bude poměrně problematické. Tento příspěvek vás naučí, jak to rychle provést pomocí Outlook VBA.
V mém předchozím článku - „Jak rychle najít a odebrat duplicitní e-maily v aplikaci Outlook”, Můžete se naučit trik, jak najít a odstranit duplicitní e-maily, které nejprve seřadí e-maily podle předmětu, poté podle času a poté podle příloh, aby se zjistily duplicitní položky, a nakonec je vyberte a stiskněte klávesu“ Odstranit ”. I když je tato metoda zdánlivě o něco pohodlnější, ve srovnání s používáním Outlook VBA je mnohem problematičtější. Pomocí následujících kódů VBA můžete rychle odstranit duplicitní položky jediným kliknutím, bez ohledu na e-maily, úkoly, kontakty nebo schůzky. Nyní čtěte dále a získáte podrobné kódy.

Odeberte duplicitní položky aplikace Outlook ve složce
- Nejprve spusťte program Outlook.
- Poté stiskněte klávesy „Alt + F11“.
- V následujícím okně editoru VBA dvojitým kliknutím otevřete modul, který se právě používá, nebo přímo vložte nový modul pomocí „Vložit“> „Modul“.
- Dále zkopírujte a vložte následující kódy VBA do modulu.
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
- Poté toto makro digitálně podepište a změňte úroveň zabezpečení maker aplikace Outlook na nízkou.
- Později můžete spustit tento nový projekt VBA. Přímo klikněte na ikonu „Spustit“ na panelu nástrojů.
- Následně budete vyzváni k výběru složky, ze které chcete odstranit duplicitní položky.
- Nakonec budou duplicitní položky ve vybrané složce odstraněny najednou.
Chraňte zranitelná data PST
Vzhledem k tomu, že soubor PST je náchylný k poškození, měli byste proto vynaložit značné úsilí na ochranu souboru PST. Například byste měli zabránit nesprávnému uzavření Outlooku. Dále musíte připravit robustní Oprava aplikace Outlook nástroj, jako je DataNumen Outlook Repair který bude schopen váš PST zachránit včas.
Úvod autora:
Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně zotavit se SQL Server a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com


