Outlook'ta yinelenen öğeleri kaldırmak istiyorsanız, bunları tek tek arayıp kaldırmak oldukça zahmetli olacaktır. Bu yazıda, Outlook VBA kullanarak bunu hızlı bir şekilde nasıl yapacağınızı öğreneceksiniz.
Bir önceki yazımda – “Outlook'ta Yinelenen E-postaları Hızlı Bir Şekilde Bulma ve Kaldırma”, yinelenen öğeleri bulmak için önce e-postaları konuya, ardından alınan zamana ve ardından eklere göre sıralayan ve son olarak yinelenen öğeleri seçip “Sil” tuşuna basan yinelenen e-postaları bulma ve kaldırma hilesini öğrenebilirsiniz. Bu yöntem görünüşte biraz daha uygun olsa da, Outlook VBA kullanmaya kıyasla çok daha zahmetlidir. Aşağıdaki VBA kodlarıyla, e-postalar, görevler, kişiler veya randevular ne olursa olsun, yinelenen öğeleri tek bir tıklamayla hızlı bir şekilde kaldırabilirsiniz. Şimdi kodları ayrıntılı olarak almak için okumaya devam edin.

Bir Klasördeki Yinelenen Outlook Öğelerini Kaldırma
- Öncelikle Outlook programınızı başlatın.
- Ardından “Alt + F11” tuş düğmelerine basın.
- Sonraki VBA düzenleyici penceresinde, kullanımda olan bir modülü açmak için çift tıklayın veya “Ekle” > “Modül” ile doğrudan yeni bir modül ekleyin.
- Daha sonra aşağıdaki VBA kodlarını kopyalayıp modüle yapıştırın.
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
- Ardından, bu makroyu dijital olarak imzalayın ve Outlook makro güvenlik düzeyinizi düşük olarak değiştirin.
- Daha sonra bu yeni VBA projesini çalıştırabilirsiniz. Araç çubuğundaki “Çalıştır” simgesine doğrudan tıklayın.
- Daha sonra, yinelenen öğeleri kaldırmak istediğiniz klasörü seçmeniz istenecektir.
- Son olarak, seçilen klasördeki yinelenen öğeler bir kerede silinecektir.
Savunmasız PST Verilerini Koruyun
PST dosyasının bozulmaya açık olması nedeniyle, PST dosyanızı korumak için çok çaba harcamalısınız. Örneğin, Outlook'un hatalı şekilde kapatılmasını engellemelisiniz. Ayrıca, sağlam bir hazırlamanız gerekir Outlook düzeltmesi araç, örneğin DataNumen Outlook Repair bu, PST'nizi zamanında kurtarabilecektir.
Yazar Tanıtımı:
Shirley Zhang, bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. kurtarmak SQL Server ve görünüm onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com


