Фильтрация ListView с помощью кнопки VBA Excel - PullRequest
0 голосов
/ 08 ноября 2018

Привет, я новичок в VBA Excel, я создал проект, который отображает данные из моего листа в просмотр списка.А потом я положил comboBox и кнопку для поиска конкретного клиента.Все, что я хочу сделать, это выбрать имя Клиента в своем поле со списком, и когда я нажму кнопку, он должен отобразить все записи о конкретном клиенте.Я сделал этот код в свою кнопку:

Private Sub CommandButton4_Click()
If Me.ComboBox1.Value = "" Then
    MsgBox "Search box is empty! Please choose a customer to search!",vbCritical

Else

    With Me.ListView1
         .HideColumnHeaders = False
         .View = lvwReport

    End With

    Dim wksh As Worksheet
    Dim rngData As Range
    Dim rngCell As Range
    Dim listItem As listItem
    Dim rowCount As Long
    Dim colCount As Long
    Dim i As Long
    Dim j As Long
    Dim k As Long

    Set wksh = Worksheets("Database")
    Set rngData = wksh.Range("A1").CurrentRegion

    For Each rngCell In rngData.Rows(1).Cells
        Me.ListView1.ColumnHeaders.Add Text:=rngCell.Value, Width:=100
    Next rngCell


    rowCount = rngData.Rows.Count

    colCount = rngData.Columns.Count

    For k = 2 To rowCount
        Set Search = Me.ListView1.ListItems.Add(Text:=rngData(k, 2).Value)
        If ComboBox1.Value = Search Then

            For i = 2 To rowCount
                Set listItem = Me.ListView1.ListItems.Add(Text:=rngData(i, 1).Value)
                For j = 2 To colCount
                    listItem.ListSubItems.Add Text:=rngData(i, j).Value
                Next j
            Next i

        End If
    Next k

End If

End Sub

Кто-нибудь может мне помочь с этим?Спасибо:)

...