

Excel İle İlgili Bir Soru Daha ( Yardım )
-
Merhaba arkadaşlar. Şu anda arazide olduğum için internet erişimim yok denecek kadar az. Bu yüzden google da adam gibi arama yapamıyor, youtube videolarını izleyemiyorum.
Excelde 2 sütunumuz var diyelim ;
A B
1 cccc 1234
2 cccc 7896
3 cccc 5236
4 aaaa 4213
5 aaaa 5649
6 aaaa 9987
Aşağıdaki işlemi Userform Üzerinden
Ben bir adet combobox ve 1 adet list box ile şunu yapmak istiyorum ;
Combobox'a "aaaa" yazdığım zaman list box da "aaaa" ya ait 4213,5649,9987 verileri alt alta listelensin.
Bunu nasıl yapabiliriz ?
iLLuMiNaTi tarafından 08/Kas/15 19:49 tarihinde düzenlenmiştir -
Hocam kullanacagin formul "Vlookup" sanirim turkce adi yatay ara idi.
Asagidaki resimde formulu senin icin koydum, umarim dogru anlamisimdir.

-
Private Sub TextBox1_Change()
If (Len(TextBox1.Text) <> 0) Then
Call find(TextBox1.Text)
Else
ListBox1.Clear
End If
End Sub
Sub find(ByRef igne As String)
ListBox1.Clear
With Worksheets(1).Range("B2", Range("B2").End(xlToRight).End(xlDown))
Set C = .find(igne & "*", LookIn:=xlValues)
If Not C Is Nothing Then
FirstAddress = C.Address
Do
ListBox1.AddItem (C.Offset(, 1).Value)
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> FirstAddress
End If
End With
End Sub
NO A B 1 cccc 1234 2 cccc 7896 3 cccc 5236 4 aaaa 4213 5 aaaa 5649 6 aaaa 9987 -
gkhn bunu yazdı
Hocam kullanacagin formul "Vlookup" sanirim turkce adi yatay ara idi.
Asagidaki resimde formulu senin icin koydum, umarim dogru anlamisimdir.

Hocam exceli sadece db için kullanıyorum olay userform üzerinden vb ile yürüyor.
-
Pardon, ben yanlis anlamisim.
-
YeniHarman bunu yazdı
Private Sub TextBox1_Change()
If (Len(TextBox1.Text) <> 0) Then
Call find(TextBox1.Text)
Else
ListBox1.Clear
End If
End Sub
Sub find(ByRef igne As String)
ListBox1.Clear
With Worksheets(1).Range("B2", Range("B2").End(xlToRight).End(xlDown))
Set C = .find(igne & "*", LookIn:=xlValues)
If Not C Is Nothing Then
FirstAddress = C.Address
Do
ListBox1.AddItem (C.Offset(, 1).Value)
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> FirstAddress
End If
End With
End Sub
NO A B 1 cccc 1234 2 cccc 7896 3 cccc 5236 4 aaaa 4213 5 aaaa 5649 6 aaaa 9987 Edit : Benim hatam sayfa adını değiştirirken hata yapmışım.
Tekrardan teşekkür ediyorum. Eline sağlık.
iLLuMiNaTi tarafından 09/Kas/15 17:08 tarihinde düzenlenmiştir -
-
YeniHarman bunu yazdı
Hocam Teşekkürler.
Şimdi şöyle bir sorum var.
aynı userformda başka bir sayfada için aynı text box dan gelen verilerle başka verileri listelemek istiyorum.
Fakat byref'i farklı tanımlasam da yinede "ambiguous name detected : find" hatası alıyorum nedne olabilir ?