Outlook'ta iki klasörü yinelenenler olmadan tek bir klasöre nasıl birleştirirsiniz?
Outlook'ta birçok e-posta hesabınız ve birçok klasörünüz olabilir. Bazı durumlarda, iki klasörü birleştirmek ve yinelenen öğeleri kaldırmak isteyebilirsiniz. Bu işi hızlıca nasıl çözebilirsiniz? Bu makalede, size Outlook'ta bu işlemi mümkün olduğunca hızlı bir şekilde gerçekleştirmenize yardımcı olacak bir VBA kodu tanıtacağım.
VBA kodu ile yinelenenler olmadan iki klasörü birleştirme
Kutools for Outlook ile birden fazla klasörü birleştirin ve yinelenen öğeleri kaldırın
VBA kodu ile yinelenenler olmadan iki klasörü birleştirme
İki klasörü birleştirmek ve yinelenen öğeleri kaldırmak için aşağıdaki adımları izleyerek VBA kodu ile bunu gerçekleştirebilirsiniz:
1. "Alt + F11" tuşlarına basarak "Microsoft Visual Basic for Applications" penceresini açın.
2. Sol bölmedeki "Project1" altında "ThisOutlookSession" öğesine çift tıklayın, ardından aşağıdaki kodu sağdaki betik penceresine kopyalayıp yapıştırın.
VBA: Yinelenenler olmadan iki klasörü birleştirme
Sub MergeOutlookFolders_WithoutDuplicates()
'UpdatebyExtendoffice20180521
Dim xSourceFolder As Outlook.Folder
Dim xTargetFolder As Outlook.Folder
Dim xCount, i As Long
Dim xItem As Object
Dim xSourceItem As Object
Dim xTargetItem As Object
Dim xDictionary As Scripting.Dictionary 'Object
Dim xStr As String
On Error Resume Next
Set xDictionary = New Scripting.Dictionary
Set xSourceFolder = Application.Session.PickFolder
Set xTargetFolder = Application.Session.PickFolder
xCount = 0
If xSourceFolder.DefaultItemType <> xTargetFolder.DefaultItemType Then
MsgBox "Error: The two folders are not in same type!", vbExclamation + vbOKOnly, "Kutools for Outlook"
Exit Sub
End If
For i = xSourceFolder.Items.Count To 1 Step -1
Set xSourceItem = xSourceFolder.Items.Item(i)
xSourceItem.Move xTargetFolder
Next
For i = xTargetFolder.Items.Count To 1 Step -1
Set xTargetItem = xTargetFolder.Items.Item(i)
Select Case xTargetItem.Class
Case olMail
With xTargetItem
xStr = .Subject & .Body & .SentOn
End With
Case olAppointment
With xTargetItem
xStr = .Subject & .Start & .Duration & .Location & .Body
End With
Case olContact
With xTargetItem
xStr = .FullName & .Email1Address & .Email2Address & .Email3Address
End With
Case olTask
With xTargetItem
xStr = .Subject & .StartDate & .DueDate & .Body
End With
End Select
If xDictionary.Exists(xStr) = True Then
xTargetItem.Delete
xCount = xCount + 1
Else
xDictionary.Add xStr, True
End If
Next i
If xCount <> 0 Then
MsgBox xCount & " duplicates removed when merging!", vbInformation + vbOKOnly, "Kutools for Outlook"
End If
End Sub
3. "Araçlar" > "Referanslar" seçeneğine tıklayın ve açılan diyalog kutusunda "Microsoft Scripting Runtime" onay kutusunu işaretleyin.
![]() | ![]() | ![]() |
4. "Tamam" seçeneğine tıklayın. Şimdi kodu çalıştırmak için "F5" tuşuna basın. İlk birleştirmek istediğiniz klasörü seçmenizi hatırlatan bir iletişim kutusu açılacaktır (not: ilk klasördeki tüm öğeler, ikinci klasörle birleştirildikten sonra silinecektir).
5. "Tamam" seçeneğine tıklayın. İkinci açılır diyalog kutusunda, karşılaştırmak ve birleştirmek istediğiniz ikinci klasörü seçin.
6. "Tamam" seçeneğine tıklayın. Artık ilk klasördeki tüm öğeler, ikinci klasöre taşınacak ve yinelenen olanlar kaldırılacaktır.
Kutools for Outlook ile birden fazla klasörü birleştirin ve yinelenen öğeleri kaldırın
Eğer VBA kodu konusunda deneyimli değilseniz, "Kutools for Outlook" adlı kullanışlı bir eklentiyi deneyin. Bu eklentinin "Klasörleri Düzenle" ve "Yinelenen E-postalar" araçları, bu görevi kolayca ve hızlı bir şekilde gerçekleştirmenize yardımcı olacaktır.
Kutools for Outlook ile en üst düzey e-posta verimliliğini açın! Sonsuza kadar tamamen ücretsiz olarak 70 güçlü özelliğe erişin. Ücretsiz Sürümü Şimdi İndirin!
Birden fazla klasörü birleştirme
1. "Kutools Plus" > "Klasörleri Düzenle" seçeneğine tıklayın, ardından "Birden Fazla Klasörü Tek Bir Klasöre Düzenle" iletişim kutusunda birleştirmek istediğiniz klasörleri listeye eklemek için "Ekle" seçeneğine tıklayın ve hedef klasör olarak bir klasör seçin.
2. "Tamam" > "Tamam" seçeneğine tıklayın. Artık seçili klasörlerdeki tüm öğeler belirlenen klasöre birleştirilmiştir.
Yinelenen öğeleri kaldırma
3. "Kutools" > "Yinelenenleri Sil" > "Yinelenen E-postalar" seçeneğine tıklayın. Ardından "Yinelenen E-postalar" iletişim kutusunda, yinelenenleri kaldırmak istediğiniz klasörü işaretleyin.
4. "İleri" seçeneğine tıklayın. "Yinelenen Mesaj Ayarları" iletişim kutusunda, e-postaları karşılaştırmak için kullanacağınız kriterleri belirtin. Daha sonra "Yinelenen E-postaları Sil" seçeneğini işaretleyin ve "Tek bir klasör içinde karşılaştır" seçeneğini seçin.
5. "İleri" > "İleri" seçeneğine tıklayın ve yinelenen e-postalar filtrelenir. Yinelenen e-postaları başarıyla kaldırmak için "Yinelenen Mesajı Sil" düğmesine ve ardından "Tamam" seçeneğine tıklayın.
En İyi Ofis Verimlilik Araçları
Son Dakika: Kutools for Outlook Ücretsiz Sürümünü Başlattı!
Yepyeni Kutools for Outlook ÜCRETSİZ sürümünü70'ten fazla harika özellikle sonsuza dek kullanabilirsiniz! Şimdi indirmek için tıklayın!
📧 E-posta Otomasyonu: Otomatik Yanıt (POP ve IMAP için kullanılabilir) / E-postaları Zamanla Gönder / E-posta Gönderirken Kurallara Göre Otomatik CC/BCC / Otomatik Yönlendirme (Gelişmiş Kurallar) / Otomatik Selamlama Ekle / Çoklu Alıcılı E-postaları Otomatik Olarak Bireysel E-postalara Böl...
📨 E-posta Yönetimi: E-postayı Geri Çağır / Konu ve Diğerlerine Göre Dolandırıcılık E-postalarını Engelle / Yinelenen E-postaları Sil / Gelişmiş Arama / Klasörleri düzenle...
📁 Ekler Pro: Toplu Kaydet / Toplu Ayır / Toplu Sıkıştır / Otomatik Kaydet / Otomatik Ayır / Otomatik Sıkıştır...
🌟 Arayüz Sihri: 😊Daha Fazla Güzel ve Havalı Emoji / Önemli e-postalar geldiğinde sizi uyarır / Outlook'u Kapatmak Yerine Simge Durumuna Küçült...
👍 Tek Tıkla Harikalar: Tümüne Eklerle Yanıtla / Kimlik Avı E-postalarına Karşı Koruma / 🕘Gönderenin Saat Dilimini Göster...
👩🏼🤝👩🏻 Kişiler & Takvim: Seçilen E-postalardan Toplu Kişi Ekle / Bir Kişi Grubunu Bireysel Gruplara Böl / Doğum günü hatırlatıcısını kaldır...

