这是一个反向查找的问题,下面举例说明几种方法:
例:如下图所示,根据B列姓名查找A列的员工号。需查找的姓名在D2单元格。
下面介绍几种函数方法:
1、通过IF数组公式构建VLOOKUP查找区域,实现A、B列对调。=VLOOKUP(D2,IF({1,0},B2:B9,A2:A9),2,0)
2、通过CHOOSE数组公式构建VLOOKUP查找区域,实现A、B列对调。=VLOOKUP(D3,IF({1,0},B$2:B$9,A$2:A$9),2,0)
3、INDEX和MATCH函数组合使用。=INDEX(A2:A9,MATCH(D2,B2:B9,0))
4、OFFSET和MATCH函数组合使用。=OFFSET(A1,MATCH(D2,B2:B9,0),0)
vlookup通常用于“向后”查询,不能“向前”查询,如果需要向前查询的话:
法一:
=VLOOKUP(D1,IF({1,0},C:C,A:A),2,0)
法二:
=INDEX(A:A,MATCH(D1,C:C,0))
下面的更常用些。