Excel中Vlookup的4种用法,轻松应对工作中的问题
在Excel表格中,Vlookup一直被lookup、Xlookup等函数嫌弃,原因是Vlookup太多软肋有以下4点:
第1点:无法反向查找
第2点:无法多条件查找
第3点:无法从后向前查找
第4点:无法一对多查找
但,有一个函数却可以帮Vlookup函数完成逆袭,它就是IF函数。
一、Vlookup函数4个逆天公式
1、从右向从左查找
【例】根据姓名查部门
=VLOOKUP(G2,IF({1,0},B1:B8,A1:A8),2,0)
2、多条件查找
【例】根据部门和姓名查工资
=VLOOKUP(E2&F2,IF({1,0},A2:A8&B2:B8,C2:C8),2,0)
3、查找最后一个
【例】查找A产品最后一次进货价格
=VLOOKUP(1,IF({100,0},0/(B2:B10="A"),C2:C10),2)
4、一对多查找
【例】查找出人事部所有员工
数组公式输入完成后按Ctrl+shift+enter结束后自动添加大括号
{=VLOOKUP(E$2&ROW(A1),IF({1,0},A$2:A$8&COUNTIF(INDIRECT("a2:a"&ROW($2:$8)),E$2),B$2:B$8),2,0)}
二、IF函数为什么这么牛
IF函数的用法很简单,但为什么它竟然可以让Vlookup实现这么多逆天的功能,其实这才是陈老师写本篇教程的主要目的。
IF函数基本语法为:
=IF(判断条件,条件成立时返回的值,不成立返回的值)
最常见的IF公式是这样的 : 第一个参数是一个很明显的判断表达式
=IF(A1>60,"及格","不及格")
我们选中公式中的A1>60,可以选中按【F9】键查看它的结果,如果成立是true,否则是False
也就是说,第一个结果是TRUE返回第2个参数
=IF(TRUE,"及格","不及格")
第一个结果是False返回第3个参数
=IF(FALSE,"及格","不及格")
而在Excel公式中,判断时
非0数字等同于True(条件成立),一般是用 1
0等同于False(条件不成立)
所以:
=IF(1,"及格","不及格")
=IF(0,"及格","不及格")
如果IF第1个参数是一组数,返回结果也是一组数(多个数放在大括号{}内)
如:
=IF({1,0},"及格","不及格")
结果是:
{"及格","不及格"}
你以为if的第2、3个参数只能是数值?No! 它们还可以是引用区域。可以用来:
1、颠倒两列位置,构成新的两列数组,帮助Vlookup实现从左向右的查找
【例】根据姓名查部门
=VLOOKUP(G2,IF({1,0},B1:B8,A1:A8),2,0)
2、多列连接成一列,再和另一列组合成新的两列数据,帮助Vlookup实现多条件查找等。
【例】根据部门和姓名查工资
=VLOOKUP(E2&F2,IF({1,0},A2:A8&B2:B8,C2:C8),2,0)
现在,你是不是有点明白IF({1,0}在Vlookup中的用法了?
陈老师:在excel中有很多会用但不知道原理的Excel公式,如果同学们喜欢这种解析的方法,就点赞转发支持一下。陈老师将继续讲解其他难理解的公式。
【培训地址】:成都市武候区高华横街33号成都A区B座13楼(近高升桥地铁F口20米)
【联系电话】:课程详细请来电咨询陈老师:15208181631 (微信同号)
QQ:714982500
手机:15208181631
电话:18025801018
地址:成都市武候区高华横街33号,成都A区B座(即高升桥地铁F口出站20米)