打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
反向查询

给大家这样一张表格,通过员工编号查询员工姓名、性别,相信看过vlookup文章的朋友都知道如何查询。


那么问题来了,如果有了员工姓名,要怎么查询员工编号呢?

今天介绍两种方法给大家。

辅助列

第一个方法就是采用辅助列,比如在编号的左边再插入一列;那么编号变成了B列,姓名变成了C列;令A2=C2,下拉填充,然后使用vlookup查询。


这种方法很简单,不再赘述,重点讲一下第二种方法。

反向查询


最重要的是公式

F2=VLOOKUP(E2,IF({1,0},B2:B5,A2:A5),2,0)


大家看到公式先不要晕,我们来拆解这个公式:
1、先看里面的 IF({1,0},B2:B5,A2:A5),我们前面讲过IF函数

if(条件,结果1,结果2)

条件成立,返回结果1,否则返回结果2;
那么我们现在看到 IF 的条件是 {1,0},结果1是B2:B5,结果2是A2:A5;

{1,0}表示的是一个集合,里面有1和0两个数字;对于IF函数来说,它会把1和0分别当作条件运行一次。

所以IF会运行两次:

  • 第一次是 IF(1,B2:B5,A2:A5),在Excel中1作为条件被看作总是成立的;所以IF(1,B2:B5,A2:A5)返回的就是B2:B5;

  • 第二次是 IF(0,B2:B5,A2:A5),在Excel中0作为条件被看作总是不成立的;所以IF(0,B2:B5,A2:A5)返回的就是A2:A5;

  • IF两次运行的结果返回的就是B2:B5,A2:A5这么一个区域。

所以我们更惊讶的发现:

IF({1,0},B2:B5,A2:A5)的真正作用是让B2:B5和A2:A5互换了位置。

画在图上就相当于


2、里面的IF看完了,外层的vlookup函数就好理解了,按照上图来使用vlookup查询,大家都懂的。这个公式的难点就在于内部的IF函数;

问大家一个问题,把内部的IF函数改写成IF({0,1},A2:A5,B2:B5),结果会不会一样呢?为什么呢?

两种方法对比

虽然我们没有怎么讲辅助列的方法,但是辅助列实际上还是很有用的。
因为方法二我们理解之后就会明白,比如最左边新增了身份证号,如果我用姓名查询身份证号;反向查询的公式就得修改为F2=VLOOKUP(E2,IF({1,0},C2:C5,A2:A5),2,0)

因为反向查询公式只能调换两列的位置,随着查询目的的变化,公式也要变化

但是如果我们采用辅助列,在最左边新建一列等于姓名:



姓名查身份证号,H2=VLOOKUP(G2,A1:E5,2,0)
姓名查编号,H3=VLOOKUP(G2,A1:E5,3,0)
姓名查性别,H4=VLOOKUP(G2,A1:E5,5,0)
需要做的只是更改vlookup的第3个参数就行了


两种方法各有优劣,辅助列简单不容易错,但是比较笨重;
方法二的反向查询公式更灵活,但不容易理解。 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
VLOOKUP函数怎么查询一个值返回多个结果
Vlookup公式,结合IF(1,0)两种用法,老板夸你厉害
VLOOKUP函数的使用方法
Vlookup都不会,怪不得加班的总是你
Vlookup函数一对多查找
EXCEL|多条件查找很难?用VLOOKUP函数完美解决
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服