Soru UserForm Listboxtaki Verileri Yineleneleri Kaldır yapmak

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
668
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Arkadaşlar Merhaba,

Ekteki Tabloda Örnek ile anlattım,
"D2" Hücresine tıkladığımda UserForm açılıyor, ürün ismi yazdığımda Data sayfasından isimleri okuyor,
fakat bir üründen birden fazla ürün olabiliyor userform listboxta sadece 1 adet göremk istiyorum, Yardmcı olabilirseniz sevinirim. Şİmdiden Teşkkürler
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,165
Excel Vers. ve Dili
2019 Türkçe
Form açıldığında Listboxa alacağınız verileri yeni ekleyeceğiniz bir sayfaya kopyalayıp benzerleri kaldırıp sonra listboxa aldırabilirsiniz.
 

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
668
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Koruma 24062003
 

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
668
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Muzaffer Ali Bey,
Dediğiniz şekilde yaptım oldu.. ilginiz için çok teşekkür ederim..
"Form açıldığında Listboxa alacağınız verileri yeni ekleyeceğiniz bir sayfaya kopyalayıp benzerleri kaldırıp sonra listboxa aldırabilirsiniz."
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Yeni bir sayfa eklemeden kodla yapmak isterseniz, mevcut kodlarınıza aşağıdaki satırını ekleyerek ve
Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Range("C2").Value = ListBox1.List(ListBox1.ListIndex, 0)
TextBox1_Change procedur'nü aşağıdaki ile değiştirerek dener misiniz?
Kod:
Private Sub TextBox1_Change()
If TextBox1.Value = Empty Then Exit Sub
ListBox1.Clear
son = Sheets("Data").Range("D65536").End(3).Row
uztxt = Len(TextBox1.Value)
myArr = Sheets("Data").Range("C2:D" & son)
    Set myList = CreateObject("System.Collections.ArrayList")
    Set myList1 = CreateObject("System.Collections.ArrayList")
 
For i = 1 To UBound(myArr)
    If Not myList.Contains(myArr(i, 2)) Then
        If Mid(myArr(i, 2), 1, uztxt) = UCase(Mid(TextBox1.Value, 1, uztxt)) Then
            myList.Add myArr(i, 2)
            myList1.Add myArr(i, 1)
        End If
    End If
Next i

For k = 0 To myList.Count - 1
    ListBox1.AddItem
    ListBox1.List(k, 0) = myList1(k)
    ListBox1.List(k, 1) = myList(k)
Next k
End Sub
 

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
668
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Sayın dEdE Çok Teşekkür Ederim.
 
Üst