我在userform上有一个文本框和一个列表框.我想根据我在文本框中输入的值过滤列表框中的值.名为TMP的工作表具有值,我根据文本框更改事件对其进行过滤,但在将该值添加到列表框时会自动退出.
Private Sub Textbox1_Change()
'On Error Resume Next
Dim fCell As Range, MyArr As Variant, i As Long
With TMP
.AutoFilterMode = False
.Range("A1").AutoFilter
.Range("A1").AutoFilter Field:=1, Criteria1:=Me.TextBox1.Value
End With
ListBox1.RowSource = ""
i = 0
For Each fCell In TMP.Range("A1:A" & TMP.Range("A" & TMP.Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeVisible)
Me.ListBox1.AddItem fCell.Value, i
i = i + 1
Next fCell
End Sub
Run Code Online (Sandbox Code Playgroud)