首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

高难动作来了,VLOOKUP 如何在 Excel 多个数据表中查询并返回结果?

经常用 Excel 的人,如果说从来没使用过 vlookup 函数,说实话这个可能性还是比较小的,除非你把 Excel 当 Word 用。

不过话说回来,会用 vlookup 和很会用,那又是两码事。比如,大家知道如何用 vlookup 对多个不同的数据表进行合并查询吗?这里有一个很巧妙的思路。

案例:

将下图 1 中的人员按部门分别放在了不同的数据表中,请在下方的数据表中根据指定的姓名,在多个数据表中查找后返回其对应的获客数。

效果如下图 2 所示。

解决方案:

1. 在 B14 单元格中输入要查询的人名 --> 在 C14 单元格中输入以下公式:

=IFERROR(VLOOKUP(B14,B2:C8,2,0),VLOOKUP(B14,F2:G7,2,0))

公式释义:

括号中的两个 vlookup 公式的作用是分别在两个不同的数据表中查找“王钢蛋”的获客数;

因为左边的数据表中并没有“王钢蛋”的记录,所以第一个 vlookup 公式会返回一个错误值;而第二个 vlookup 可以查找出数据;

iferror 函数大家不陌生,语法为 IFERROR(value, value_if_error);如果 value 没有错误,则返回该值;出错的话则返回 value_if_error 的值;

如果第一个 vlookup 查找到结果,则返回该结果;否则返回第二个vlookup 的查找结果;如果两个函数都没查到结果,则返回错误值

2. 如果将 B14 单元格的值改成第一个表中的姓名,同样也能正确查找出结果。

如果名单分成了三个数据表呢?这个公式就不管用了吧?因为 iferror 只能放两个参数,用三个 vlookup 公式就会出错了。

说得没错,的确不能直接这么用,但是可以变通一下呀,大家想想,多个条件判断是不是用 if 嵌套 if?那么此处同理,可以用 iferror 嵌套来解决这个问题。

3. 在 C10 单元格中输入以下公式:

=IFERROR(VLOOKUP(B10,B2:C6,2,0),IFERROR(VLOOKUP(B10,F2:G5,2,0),VLOOKUP(B10,J2:K5,2,0)))

公式释义:

IFERROR(VLOOKUP(B10,F2:G5,2,0),VLOOKUP(B10,J2:K5,2,0)):这一段跟上一案例的公式意思差不多,就是在第二和第三个数据表中查找匹配,如果没找到,会返回一个错误值;

IFERROR(VLOOKUP(B10,B2:C6,2,0),...):外面再嵌套一个 iferror 函数,这样就把三个查找函数嵌套成 2 层,每层 iferror 包含 2 个参数,就能正确查找了。

更换 B10 单元格的姓名,都能准确查找出对应的获客数。

Excel学习世界

转发、在看也是爱!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20211104A0APDY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券