Bir örnek dosya ekledim açıklamalar var kodda yinede açıklayayım.
Bu dosyanın konu ile alakası yok sadece örnek.
Eğer dosyanın ilk açılışında hata gelirde dict ile alakası yok çalışıyor.
Mantık şu.
Veriler kapalı excelden geliyor.
yukarıdaki kod dict in içine benzersiz veri alıyor bir kez içine.Eğer mükerrer veri olsaydı hata olurdu bu yüzden If Not scr.Exists(rs(0).Value) Then ile aynı veri yoksa koşulu eklendi.
bu kısımda aynısı if koşuluna gerek yok burda.Fakat item değil key e veriler gelir.
yukarıdaki koddaki scr.Add rs(0).Value, say burda say item dir.
scr(rs(0).Value) = scr(rs(0).Value) ile scr.Add rs(0).Value , "" aynıdır aslında
alttaki kodlar ise join ile topluca mesaj kutusunda listeleniyor.
Alttaki ise kezlerin içinde döngü kurdum immediate window ile sonucu incelersiniz yada additem ile combo yada listboxa çekersiniz.
Alttakide normal döngü ile aynısı.
Alttaki ilede listboxa toplu veri aktarma.
Normalde excelde topluca hücrelere veri aktarma mesela range("A1").resize(scr.count,1).value=application.transpose(scr.keys) ile aktarılıyor belki yanlış yazmış olabilirim kafadan yazdım.Access te transpose göremedim.
Kodları F8 ile adım adım inceleyebilirsiniz watch vindow ilede takip edebilirsiniz.Özetle böyle.
Excledeki B sütunundaki verilerin benzersiz listelendiğini söyleyeyim.
Kodların tamamı.