TextBox ile ListBoxta Arama Yapma

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
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
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Ö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
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
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
 
Üst