如何解决如何在第二列上进行 VLookup 并获取第一列值?
我有一张有两列的工作表。 “A”列包含人员姓名,“B”列包含员工 ID。
我读到 VLookup 需要查找范围的第一列。就我而言,我必须对 B 列进行 VLookup 并从 A 列中获取相应的值。
我正在尝试这段代码,但显然它不起作用。
strEmp = Application.WorksheetFunction.VLookup(strEID,wsLookup.Range("B:A").Value,1,False)
** 尝试 **
尝试的解决方案建议作为答案之一。还是没收到。
strEmp = WorksheetFunction.Match(strEID,wsLookup.Range("A2:B500"),0)
解决方法
您需要结合使用 INDEX
和 MATCH
。
使用 MATCH
查找 B 列中包含您要查找的员工 ID 的行。然后使用INDEX
函数在A列中查找对应的名称
在 VBA 中你只需要 Match
:
Dim TableRange as Range
Set TableRange = wsLookup.Range("A:B")
Dim matchRow
matchRow = Application.Match(strEID,TableRange.Columns(2),0)
If Not Iserror(matchRow) then strEmp = TableRange.Cells(matchrow,1)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。