Excel 基于文本框值搜索列并在列表框中显示所有结果
我有一个Excel 基于文本框值搜索列并在列表框中显示所有结果,excel,vba,forms,Excel,Vba,Forms,我有一个 ListBox = firmList; TextBox = firmGroupID; Worksheet = RelatedFirms; ColumnA = gID (ID numbers); ColumnB = firmName 我试图根据firmGroupID的值填充我的列表框。 目前,我有一个组合框,它根据组合框的选择填充firmGroupID中的gID编号 然后,我希望firmList根据firmGroupID填充firmNames列表 表关联公司包含每个公司名称的
ListBox = firmList;
TextBox = firmGroupID;
Worksheet = RelatedFirms;
ColumnA = gID (ID numbers);
ColumnB = firmName
我试图根据firmGroupID的值填充我的列表框。
目前,我有一个组合框,它根据组合框的选择填充firmGroupID中的gID编号
然后,我希望firmList根据firmGroupID填充firmNames列表
表关联公司包含每个公司名称的指定gID
这似乎很简单,但我尝试的一切似乎都不起作用
不确定如何仅显示列表框中值等于gID的项
Private Sub firmGroupID_Change()
Dim rngName As Range
Dim ws As Worksheet
Dim i As Integer
Set ws = Worksheets("RelatedFirms")
For i = 1 To ws.Cells(ws.Rows.Count, 1).End(xlUp).Row Step 1
If ws.Cells(i, 1).Value <> vbNullString Then Me.firmList.AddItem
ws.Cells(i, 1).Value
Next i
End Sub
请更改此代码:
If ws.Cells(i, 1).Value <> vbNullString Then Me.firmList.AddItem ws.Cells(i, 1).Value
你有错误吗?在ws.Cellsi,1.Value…之后需要一个结束If行。。。事实上,你的If语句写得不正确。对不起,我没有添加这个问题,我还是新的。没有错误,它实际上很好,只是不是我想要的。它感觉我的列表框包含所有内容,而不是将firmGroupID中的值与gID匹配,并且只显示这些结果。列表框中没有显示任何内容。我需要在任何地方指示gID吗?这是firmGroupID也需要比较的WorksheetRelatedForms中的列的名称。感谢大家的帮助。我用它来工作,我定义了firmGroupID,Dim s为String,s=firmGroupID.Value。不过还有最后一个问题。如何停止循环,以便在选择下一项时清除列表框?谢谢
If ws.Cells(i, 1).Value = firmGroupID.Value Then Me.firmList.AddItem ws.Cells(i, 2).Value