Dacă doriți să eliminați elementele duplicate din Outlook, căutarea și eliminarea unul câte unul va fi destul de dificilă. Această postare vă va învăța cum să completați rapid acest lucru cu Outlook VBA.
În articolul meu anterior – „Cum să găsiți și să eliminați rapid e-mailurile duplicate în Outlook”, puteți învăța un truc pentru a găsi și elimina e-mailurile duplicate, care mai întâi sortează e-mailurile după subiect, apoi după ora primită și apoi după atașamente pentru a afla elementele duplicate și, în sfârșit, le selectați pe cele duplicate și apăsați tasta „Șterge”. Deși această metodă este aparent puțin mai convenabilă, dar este mult mai supărătoare în comparație cu utilizarea Outlook VBA. Prin următoarele coduri VBA, puteți elimina rapid elementele duplicate printr-un singur clic, indiferent de e-mailuri, sarcini, contacte sau întâlniri. Acum citiți mai departe pentru a obține codurile în detaliu.

Eliminați elementele Outlook duplicate dintr-un folder
- Pentru început, lansați programul Outlook.
- Apoi apăsați butoanele tastei „Alt + F11”.
- În fereastra ulterioară a editorului VBA, faceți dublu clic pentru a deschide un modul care este în uz sau introduceți direct un nou modul prin „Inserare” > „Modul”.
- Apoi copiați și inserați următoarele coduri VBA în modul.
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
- După aceea, semnați digital această macrocomandă și schimbați nivelul de securitate al macrocomenzii Outlook la scăzut.
- Mai târziu, puteți rula acest nou proiect VBA. Faceți clic direct pe pictograma „Run” din bara de instrumente.
- Ulterior, vi se va solicita să selectați un folder în care doriți să eliminați elementele duplicat.
- În cele din urmă, elementele duplicate din folderul selectat vor fi șterse imediat.
Protejați datele PST vulnerabile
Datorită faptului că fișierul PST este susceptibil de corupție, ar trebui să depuneți o mulțime de eforturi pentru a vă proteja fișierul PST. De exemplu, ar trebui să împiedicați închiderea necorespunzătoare a Outlook. În plus, trebuie să pregătiți un robust Remediere Outlook instrument, cum ar fi DataNumen Outlook Repair care vă va putea salva PST-ul la timp.
Introducerea autorului:
Shirley Zhang este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv recupera SQL Server și produse software de reparații Outlook. Pentru mai multe informații vizitați www.datanumen.com


