• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

yinelenen verilerden yinelenensiz sütun oluşturma

Katılım
18 Mayıs 2005
Mesajlar
63
Değerli Üstadlar,
K2 den K999 a meyve adlarının yer aldığı sütun var. Ama burada aynı meyve adı defalarca tekrarlanıyor. K2:K999 verilerinden AA2 den başlayarak tekrarsız meyve isimleri listesi oluşturmak istiyorum. Bunu süz-gelişmiş süzgeç ile yapabiliyorum ama makro ile nasıl yapabilirim. Şimdiden teşekkür ederim.
 
Merhaba;
Sayfanın kod bölümüne;

Kod:
Sub tekrarsız()
Application.ScreenUpdating = False
On Error Resume Next
Range("aa2:aa65536").ClearContents
sat = 2
For i = 2 To Range("k999").End(xlUp).Row
If WorksheetFunction.CountIf(Range("k2:k" & i), Cells(i, "k")) = 1 Then
Cells(sat, "aa") = Cells(i, "k")
sat = sat + 1
End If
Next i
Application.ScreenUpdating = True
MsgBox "İşlem TAMAM.", vbInformation
End Sub
Kodlarını yerleştirin ve bir butona bağlayarak çalıştırın.
İyi çalışmalar.
 
Alternatif,

Kod:
Sub BENZERSİZ_LİSTE()
    Dim Dizi As Object, Veri As Range, Son As Long
    
    Set Dizi = CreateObject("System.Collections.ArrayList")
    Son = Cells(Rows.Count, "K").End(3).Row
    
    For Each Veri In Range("K2:K" & Son)
        If Veri.Value <> "" Then
            If Dizi.Contains(UCase(Replace(Replace(Veri.Value, "ı", "I"), "i", "İ"))) = False Then
                Dizi.Add UCase(Replace(Replace(Veri.Value, "ı", "I"), "i", "İ"))
            End If
        End If
    Next
    
    Dizi.Sort
    
    Range("AA2:AA" & Rows.Count).ClearContents
    Range("AA2:AA" & Dizi.Count + 1) = Application.Transpose(Dizi.ToArray())
End Sub
 
Merhaba Korhan Bey,

ArrayList Sınıfının Count özelliği 0 'dan başladığı için, listenin en sonundaki veriyi yazdırmak için Count'u +1 artırmak gerek, o kısmı atladınız sanırım, yoksa haliyle liste eksik oluşacaktır..
Bir de, neden ı,I,i,İ dönüşünü yapıp büyük harfe dönüştürdüğünüzü "net olarak" anladım. Meyve isimlerinin küçük büyük harflerle yazılabileceğini düşünerek hepsini bir düzene almak için mi, yoksa özel bir sebebi var mı?
 
Merhaba Murat Bey,

Evet + 1 olayı dikkatimden kaçmış. Gerekli düzenlemeyi yaptım. Teşekkür ederim.

Büyük harfe çevirmemin sebebi ise kullanılan nesne bu ayrışımı yapmıyor. Eğer "K" sütununda hem "ahmet" hem de "AHMET" varsa benzer olmasına rağmen ikisini de listeliyor. Bunun önüne geçmek için veriyi büyük harfe çevirdim.
 
Peki Korhan Bey, bilgilendirme için teşekkürler.

İyi günler.
 
Değerli Üstadlar,
K2 den K999 a meyve adlarının yer aldığı sütun var. Ama burada aynı meyve adı defalarca tekrarlanıyor. K2:K999 verilerinden AA2 den başlayarak tekrarsız meyve isimleri listesi oluşturmak istiyorum. Bunu süz-gelişmiş süzgeç ile yapabiliyorum ama makro ile nasıl yapabilirim. Şimdiden teşekkür ederim.

ben de aynısını formülle yapmaya çalışmıştım belki birinin işine yarar
 

Ekli dosyalar

Geri
Üst