我希望有一个用户窗体,其中将文本键入textbox1
,可能会填充与“数据”工作表中的文本匹配的值listbox1
,对于textbox2
和{{1 }}。目前,当我输入listbox2
时,它会用打开的工作表中A列的值填充textbox1
,而不是工作表“ Data”。
listbox2
编辑:我最终使用的内容:
Private Sub TextBox1_Change()
Dim i As Integer, ws As Worksheet
ListBox1.Visible = True
Set ws = Sheets("Data")
For i = 2 To Sheets("Data").Range("D6000").End(xlUp).Row
If UCase(Left(ws.Cells(i, 1), Len(TextBox1.Text))) = UCase(TextBox1.Text) Then
ListBox1.AddItem Cells(i, 1)
End If
Next i
End Sub
Private Sub TextBox2_Change()
Dim i As Integer, ws As Worksheet
ListBox2.Visible = True
Set ws = Sheets("Data")
For i = 2 To Sheets("Data").Range("B6000").End(xlUp).Row
If UCase(Left(ws.Cells(i, 1), Len(TextBox2.Text))) = UCase(TextBox2.Text) Then
ListBox2.AddItem Cells(i, 1)
End If
Next i
End Sub
答案 0 :(得分:0)
使用ws.Cells(i, 1)
代替Cells(i, 1)
。
另外,是否应该将与ListBox2
有关的部分移至TextBox2_Change()
?