Excel VBA ile Tekrarlanan Verileri Kaldırma

Excel VBA ile Tekrarlanan Verileri Kaldırma
Excel VBA Tekrarlanan Verileri Kaldırma

1. Hemen Kullanılabilir 4 Adet VBA Tekrarlanan Verileri Kaldırma Kodu

1. RemoveDuplicates ile Temizle

A sütunundaki tekrarlanan verileri kaldırır (başlık var).

Sub RemoveDuplicatesTemizle()
    Range("A1:A100").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

3. Döngü ile Manuel Temizle

Tersten döngü ile tekrarlanan satırları siler.

Sub DonguIleTemizle()
    Dim i As Long, j As Long, sonSatir As Long
    sonSatir = Cells(Rows.Count, 1).End(xlUp).Row
    For i = sonSatir To 2 Step -1
        For j = i - 1 To 1 Step -1
            If Cells(i, 1) = Cells(j, 1) Then Rows(i).Delete: Exit For
        Next
    Next
End Sub

2. Dictionary ile Benzersiz Değerler

A sütunundaki benzersiz değerleri B sütununa yazar.

Sub DictionaryBenzersiz()
    Dim dict As Object: Set dict = CreateObject("Scripting.Dictionary")
    Dim hucre As Range, i As Long: i = 1
    For Each hucre In Range("A1:A100")
        If hucre <> "" And Not dict.exists(hucre.Value) Then
            dict.Add hucre.Value, hucre.Value
            Cells(i, 2) = hucre.Value: i = i + 1
        End If
    Next
End Sub

4. Çoklu Sütunda Tekrarları Kaldır

A, B, C sütunlarındaki kombinasyonları benzersiz yapar.

Sub CokluSutunTemizle()
    Range("A1:C100").RemoveDuplicates Columns:=Array(1,2,3), Header:=xlYes
End Sub

2. VBA Makroları için Ön Hazırlık

1. Geliştirici Sekmesini Aktifleştirin

Excel'de VBA kodlarını yazabilmek için önce Geliştirici sekmesini aktif etmelisiniz. Detaylı bilgi için tıklayın.

VBA - Geliştirici sekmesi
⚙️ Geliştirici sekmesini aktifleştirme

3. Modül Ekleyin

Kodlarınızı yazmak için bir Modül eklemelisiniz. Makro yazma rehberi için tıklayın.

VBA - Modül ekleme
📝 Modül ekleme

2. Visual Basic Düzenleyici'yi Açın

Alt + F11 (Windows) veya Option + F11 (Mac) ile hızlıca açabilirsiniz.

Visual Basic Düzenleyici'yi Açma
📝 Visual Basic Düzenleyici'yi Açma

4. Kodu Çalıştırın

Yazdığınız kodu çalıştırmak için F5 tuşuna basın veya Çalıştır butonuna tıklayın. VBA makro nedir? öğrenmek için tıklayın.

F5

▶️ Makroyu çalıştır

📋 Makro çalıştırma

3. Sık Yapılan Hatalar ve Çözümleri

Hata Türü Nedeni Çözüm
RemoveDuplicates çalışmıyor Yanlış aralık veya sütun Doğru aralık ve sütun numarası belirtin.
Dictionary hatası Mac'te çalışmıyor Mac'te ArrayList veya Collection kullanın.
Makro çalışmıyor Makro güvenlik ayarları Dosya → Seçenekler → Güven Merkezi → Makro ayarlarını kontrol edin.
Yanlış satır silme Döngü yönü yanlış Tersten döngü (Step -1) kullanın.
VBA hata yönetimi Kodda hata yakalama yok Kodlarınıza On Error Resume Next veya hata yönetimi ekleyin. VBA makro hataları ve çözümleri sayfasını ziyaret edin.
💡 Hızlı Çözüm Önerileri: Doğru aralık belirtin · Mac'te Dictionary yerine Collection kullanın · Makro güvenlik ayarlarını kontrol edin · Dosyanızı yedekleyin

4. Sıkça Sorulan Sorular

01 Excel VBA ile tekrarlanan veriler nasıl kaldırılır?

Excel VBA'da tekrarlanan verileri kaldırmak için RemoveDuplicates yöntemini kullanabilirsiniz. Örneğin: Range("A1:A100").RemoveDuplicates Columns:=1, Header:=xlYes

02 RemoveDuplicates ile Dictionary arasındaki fark nedir?

RemoveDuplicates doğrudan hücre aralığında çalışır ve verileri kalıcı olarak siler. Dictionary ise bellekte benzersiz değerleri toplar ve daha esnek kontroller sağlar.

03 Mac'te Excel VBA ile tekrarlanan veriler kaldırılabilir mi?

Evet, Mac'te Excel VBA ile tekrarlanan verileri kaldırmak Windows ile aynı kodlarla çalışır. RemoveDuplicates yöntemi Mac'te de desteklenir.

04 Birden fazla sütunda tekrarlanan veriler nasıl kaldırılır?

Birden fazla sütunda tekrarlanan verileri kaldırmak için Columns:=Array(1,2,3) parametresini kullanabilirsiniz.

05 Tekrarlanan verileri kaldırırken başlık satırı nasıl korunur?

Header:=xlYes parametresini kullanarak başlık satırını koruyabilirsiniz. Bu, ilk satırın başlık olarak algılanmasını sağlar.

06 VBA ile tekrarlanan verileri kaldırırken hata alıyorum, ne yapmalıyım?

En sık karşılaşılan hatalar: 1) Geçersiz aralık → Doğru aralık belirtin. 2) Başlık parametresi yanlış → Header:=xlYes veya xlNo kullanın. 3) Makro güvenlik ayarları → Makroları etkinleştirin.

💡 İpucu: VBA makrolarını çalıştırmadan önce dosyanızı yedeklemeyi unutmayın. Ctrl+S ile kaydedin.
🤖 Akıllı Arama Asistanı
💬 Merhaba! Size nasıl yardımcı olabilirim?
Excel Asistanı
👋 Merhaba! Excel ile ilgili ne öğrenmek istersin? Örn: DÜŞEYARA nasıl kullanılır?
DÜŞEYARA Pivot Tablo Gantt Şeması