Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Leistungsproblem in der dynamischen Dropdown-Suchliste in Excel

Ich weiß nichts über die Leistung, aber versuche Folgendes. Ihre Daten sollen im Blatt "db" ab Zeile 2 stehen. Statt einer Combobox platziere ich eine Textbox (TextBox1 ) und eine Liste (ListBox1 ) in einem Benutzerformular.

Private Sub TextBox1_Change()
    Dim v As String
    Dim YourInput As String
    Dim iIdx As Long
    Dim CharNumber As Integer

    YourInput = TextBox1.Text

    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False

    ListBox1.Clear

    lLastRow = Worksheets("db").Cells(3, 1).End(xlDown).Row
    CharNumber = Len(YourInput)

    For iIdx = 2 To lLastRow
        v = Worksheets("db").Cells(iIdx, 1).Text
        If LCase(Left(v, CharNumber)) = LCase(YourInput) Then
            ListBox1.AddItem v
        End If
    Next

    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    Application.EnableEvents = True
End Sub

Private Sub ListBox1_Click()
    MsgBox ("Your selection: " & ListBox1.Text)
    'do your stuff
End Sub