• DİKKAT

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

Combobox da aynı veri varsa, nasıl ayrılır.

Katılım
22 Ocak 2009
Mesajlar
136
Excel Vers. ve Dili
excell 2003
Örnek dosyada olduğu gibi A sütununda aynı isimde birden fazla veri var. combobox tan seçim yapılmak istendiğinde ilk veriye gidiyor.

Bu sorunu nasıl aşabiliriz. Örnek çözümler var mı acaba?

Söyle bişey aklıma geldi, comboboxtan aynı isim olan bi veri çağırıldığında küçük bi user form açılsın ve ilgili kayıtların herhangi bir hücrede yazan değerini referans göstererek(örn tarih olsun) hangisine gitmek istediğimizi sorsun. Ve o kayda-butona basınca o veriyi getirsin.
 

Ekli dosyalar

Merhaba,

UserForm1'in kod sayfasına;

Kod:
Private Sub UserForm_Initialize()
 
    Dim i As Integer
    Dim a, hucre As Variant
 
    With CreateObject("Scripting.Dictionary")
        For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
            hucre = Cells(i, "A")
            If Not .exists(hucre) Then .Add hucre, Nothing
        Next i
    a = .keys
    End With
 
        With Me.ComboBox1
            .RowSource = Delete
            .Clear
            .List = a
            .ListIndex = 1
        End With
 
End Sub
.
 
Combobox un rengini beyaz yaparak değişmi gözlemleyiniz.

.
 
Hocam farkı gördüm şimdi, ama benim istediğim mükerrer olanların teke inmesi değil, aynı isimde onları farklılaştırabilmek idi.

Bununla ilgili yardımcı olabilirsen sevinirim.
 
Farklılaştırmaktan kastınız nedir. Lütfen sorularınızı daha açık ve detaylı açıklayınız.
 
Anlatımım biraz eksik olmuş. Özür dilerim.

comboboxı isim sıralı(mükerrer olanlar dahil-teke indirgenmeyecek) dizebilirsem sorunum çözülmüş olacak.

Tşkler.
 
Bu şekilde deneyiniz.

Kod:
Private Sub UserForm_Initialize()
 
    Dim son As Long
 
    Application.ScreenUpdating = False
    son = Cells(Rows.Count, "A").End(xlUp).Row
    Range("A2:D" & son).Sort Range("A2")
 
    ComboBox1.RowSource = "'Bilgi'!$A$2:$A$" & son
 
    Application.ScreenUpdating = True
 
End Sub
.
 
Teşekkürler Ömer hocam uğraştırdım seni. bu kod doğru oldu ama örn.

comboboxtan 2. aynı veriyi seçtiğimde arka planda 2.sıradaki aynı ismi seçmiyor, başka aynı isimliyi seçiyor.

Benim istediğim, comboboxtan açıp aynı isimli 4. yü seçersem 4.nün bilgisini getirsin. ama şimdi 6. vıyı getiriyor.

COMBOBOXHAKAN
HAKAN
HAKAN
MEHMET
KADİR

burdan 2. sıradaki hakan ı seçiyorum ama excelde sütunda 1. ye gidiyor.
 
UserForm1 de, CommandButton6' nın kodlarını aşağıdakiyle değiştiriniz.

Kod:
Private Sub CommandButton6_Click()
    Sheets("Bilgi").Range("A" & ComboBox1.ListIndex + 2).Select
End Sub
.
 
Çok teşekkürler Ömer hocam. İşte bu idi aradığım.
,
Saygılar.
 
Geri
Üst