我试图找出基于两列标准查找单元格信息的最佳方法。例如,我的 A 列包含一组数字,B 列包含另一组数字,C 列包含我要提取的单元格信息。单元格信息必须与我在用户表单中提供的 A 列和 B 列信息匹配,然后当我单击“搜索”时,我希望用户表单填充 C 列的信息。用户表单编码很好——我只是在“查找”方面遇到了麻烦。如果我不是在 vba 中编写这段代码,而只是作为一个数组,它看起来像这样:
={INDEX(A1:C20,MATCH(1,(A:A=ColumnAItem)*(B:B=ColumnBItem),0),3)}
到目前为止,这基本上是我自己在 VBA 中发现的:
Private Sub SearchButton_Click()
Dim SAP_A As Variant, SAP_B As Variant
Dim ws As Worksheet, mA, mB
Set ws = Sheets("Database Entry Sheet")
SAP_A = Trim(textbox5.Value)
SAP_B = Trim(textbox8.Value)
mA = Application.Match(CLng(SAP_A), ws.Range("A:A"), 0)
mB = Application.Match(CLng(SAP_B), ws.Range("B:B"), 0)
If Not IsError(mA) And IsError(mB) Then
textbox1.Text = ws.Cells(mA, "C")
End Sub