• DİKKAT

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

arama (vlookup)

Katılım
1 Eylül 2008
Mesajlar
219
Excel Vers. ve Dili
ofis 2010
merhabalar
aşağıdaki kodlarla userform üzerinde bir arama motoru kurmaya çalıştım.fakat kodlarım sonucu vermiyor.acaba hatam nerede.(vlookup lu bir çözüm önermenizi bekliyorum) çalışmam ektedir
teşekkürler

Private Sub CommandButton1_Click()
Me.TextBox1 = Format(Me.TextBox1, "General")

Me.Label2.Caption = WorksheetFunction.VLookup(Me.TextBox1, Sheets("Sayfa1").[a1:b10], 2, False)

End Sub
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları dener misiniz?

Kod:
Private Sub CommandButton1_Click()
Dim c As Range
    Set c = Sheets("Sayfa1").Range("a:a").Find(TextBox1.Value, LookIn:=xlValues, LookAt:=xlWhole)
    If Not c Is Nothing Then
        Label2.Caption = Sheets("Sayfa1").Cells(c.Row, "B")
    Else
        Label2.Caption = "Aradığınız No'yu Bulamadım...."
    End If
End Sub
 
necdet bey ilginiz için çok teşekkür ederim.fakat find ile değilde vlookup la sonuç almaya çalışıyorum.amacım vlookup ı vba da kavramak.bilen tüm arkadaşların konuya ilgilerini bekliyorum
 
necdet bey ilginiz için çok teşekkür ederim.fakat find ile değilde vlookup la sonuç almaya çalışıyorum.amacım vlookup ı vba da kavramak.bilen tüm arkadaşların konuya ilgilerini bekliyorum
VBA'da vlookup kulanılmaz.Find kullanılır.
Bence siz Find komutunu iyice kavrayın.:cool:
 
evren bey vba da vlookup var ama galiba benim yapmak istediğim gibi mümkün değil.
ilginiz için teşekkürler.iyi akşamlar
 
evren bey vba da vlookup var ama galiba benim yapmak istediğim gibi mümkün değil.
ilginiz için teşekkürler.iyi akşamlar
Find komutu bu konuda çok esnektir.Bu komutla(find) bir çok işlemide ayni anda yapabilirsiniz.
Size naçizane tavsiyem vba ile çalışırken find komutunu kullanınız.
Ancak find komutununu yüksek kabiliyetini bilmeyen kişiler worksheetfunction.Vlookup kullanırlar.Ayrıca bulamazsa hata verir çöker programın.Gereksiz yere belkide on error resume next kullanmak zorunda kalırsın.Bu komutu kullanmakta çok sakıncalıdır.Bunuda(on error rsume next) anti parantez söyleyeyeim.:cool:
 
Merhaba,

Evren bey ile aynı düşüncede olduğum için Find komutunu kullanmıştım.

Sizi de kırmayalım, kodları inceleyiniz.

Kod:
Private Sub CommandButton1_Click()
On Error Resume Next
Dim Deger As String
Dim Alan As Range
Set Alan = Range("A1:B" & [A65536].End(3).Row)
Deger = Application.WorksheetFunction.VLookup(CDbl(TextBox1.Value), Alan, 2, False)
If Deger <> "" Then
    Label2.Caption = Deger
Else
    Label2.Caption = "Aranan Değer Bulunamadı..."
End If
End Sub
 
necdet bey teşekkür ederim.kodları deneyeceğim
 
Geri
Üst