Pokud chcete sloučit všechny položky z více složek aplikace Outlook a zajistit duplikát, můžete použít metodu uvedenou v tomto článku. Používá kód VBA, který vám pomůže dosáhnout toho jako korek.

Někdy můžete chtít sloučit položky z několika složek aplikace Outlook, například sloučení všech kontaktů několika složek kontaktů aplikace Outlook. V této situaci, pokud mezi těmito složkami existují duplicitní kontakty, musíte doufat, že duplikáty lze během slučování automaticky odebrat. Za těchto okolností můžete využít následující kód VBA, abyste jej snadno realizovali.
Sloučit položky z více složek bez duplikátů
- StarSpusťte aplikaci Outlook.
- Poté byste měli vstoupit do editoru VBA aplikace Outlook stisknutím klávesy „Alt + F11“ na hlavní obrazovce aplikace Outlook.
- Dále v okně „Microsoft Visual Basic for Applications“ musíte otevřít modul, který se nepoužívá.
- Poté byste měli do tohoto modulu zkopírovat následující kód 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
- Později musíte zkontrolovat nastavení maker aplikace Outlook a ujistit se, že je makro povoleno.
- Nakonec to můžete vyzkoušet.
- Nejprve zpět do okna nového modulu.
- Poté stiskněte klávesu F5 pro spuštění tohoto makra.
- Poté musíte vybrat dvě složky, které chcete sloučit. První je zdrojový a druhý je tarzískat jeden.
- Poté začne aplikace Outlook přesouvat všechny položky ze zdrojové složky do složky tarzískat jeden. Mezitím budou také automaticky odstraněny duplikáty.
- Nakonec můžete obdržet zprávu s výzvou k počtu odstraněných duplikátů, jako je snímek obrazovky níže:
Drobné chyby mohou vést k velkým haváriím
Navzdory množství vynikajících funkcí je Outlook stále náchylný k chybám a poškozením. Možná jste se setkali s různými problémy aplikace Outlook. Mnoho uživatelů má sklon ignorovat náhodné chyby. Je to však malá chyba, která spouští vážné zhroucení aplikace Outlook, což ohrozí soubor aplikace Outlook. Proto byste neměli ignorovat žádné malé chyby. Místo toho byste je měli co nejdříve odstranit. Dále si raději nechejte trefný výraz Oprava PST nástroj, jako je DataNumen Outlook Repair. Díky své vysoké míře obnovy se tento nástroj přenesl přes své kolegy.
Ú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ě poškozený sql a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com

