• DİKKAT

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

TextBox ile ListBoxta Arama Yapma

Katılım
20 Ocak 2020
Mesajlar
247
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Merhabalar hayırlı akşamlar, aşağıdaki kod ile listboxta arama yaptırıyorum. Aradığım veri C sütununda. Kod arama yapıyor ancak C sütunundan sonraki verileri getiriyor A ve B Sütunundaki verileri göstermiyor. A ve B sütunundaki verileri de getirmek için ne yapabilirim


Kod:
Private Sub tbAdArama_Change()





Application.ScreenUpdating = False



Dim myarr() As String, k As Range, adr As String, a As Long

ReDim myarr(1 To 11, 1 To 1)

listAnasayfa.RowSource = vbNullString

Set k = Range("C:C").Find("*" & tbAdArama.Text & "*", , xlValues, xlWhole)

If Not k Is Nothing Then

    adr = k.Address

    Do

        a = a + 1

        ReDim Preserve myarr(1 To 11, 1 To a)

        myarr(1, a) = k.Value

        myarr(2, a) = k.Offset(0, 1).Value

        myarr(3, a) = k.Offset(0, 2).Value

        myarr(4, a) = k.Offset(0, 3).Value

        myarr(5, a) = k.Offset(0, 4).Value

        myarr(6, a) = k.Offset(0, 5).Value

        myarr(7, a) = k.Offset(0, 6).Value

        myarr(8, a) = k.Offset(0, 7).Value

        myarr(9, a) = k.Offset(0, 8).Value

        myarr(10, a) = k.Offset(0, 9).Value

        myarr(11, a) = k.Offset(0, 10).Value



        Set k = Range("C:C").FindNext(k)

    Loop While Not k Is Nothing And k.Address <> adr

    listAnasayfa.Column = myarr

End If

Erase myarr

Set k = Nothing

Application.ScreenUpdating = True

End Sub
 
Örnek dosya olmadığı için deneyemedim ve kodlarınızın sorduğunuz kısım haricinde doğru çalışıyor farzettim.

Aramayı C sütununda yapıp, A-K arasını listboxa almak istediğinizi düşünerek.

Bu satırların tamamını silerek bunun yerine
C++:
        myarr(1, a) = k.Value
        myarr(2, a) = k.Offset(0, 1).Value
        myarr(3, a) = k.Offset(0, 2).Value
        myarr(4, a) = k.Offset(0, 3).Value
        myarr(5, a) = k.Offset(0, 4).Value
        myarr(6, a) = k.Offset(0, 5).Value
        myarr(7, a) = k.Offset(0, 6).Value
        myarr(8, a) = k.Offset(0, 7).Value
        myarr(9, a) = k.Offset(0, 8).Value
        myarr(10, a) = k.Offset(0, 9).Value
        myarr(11, a) = k.Offset(0, 10).Value

Bu satırları ilave edin.
C++:
        For x = 1 To 11
            myarr(x, a) = k.Offset(0, x - 3).Value
        Next x
 
Sayın Ömer Faruk hocam ellerine sağlık, çok teşekkür ederim Allah razı olsun sizden. Tam demek istediğim buydu, tekrardan çok teşekkür ederim hayırlı geceleriniz olsun. Allaha emanet olsun
 
Geri
Üst