dataframe 根据条件查找_EXCEL查找王LOOKUP函数的N种用法

51d99e7fd2aed203537f494850ee5a1c.gif

泡泡:LOOKUP函数跟VLOOKUP长得很像,一看就是兄弟吧!

萌二:对的,还有个HLOOKUP跟他俩也是一家子,都是查找能手。

泡泡:那怎么区分他们仨呢?

萌二:他们各自擅长的领域有所区别:VLOOKUP擅长竖向查找,HLOOKUP习惯横向查找;LOOKUP就厉害了,业界称他为“查找函数之王”,坐着站着躺着想怎么查就怎么查v( ̄︶ ̄)y

泡泡:这么厉害?!怎么我以前都只听到妹子们热烈讨论阿VLOOKUP,都没怎么八卦阿LOOKUP呀?

萌二:这也正常。VLOOKUP有一技之长就扬名海内外了,毕竟在各类数据处理分析中最常用到的就是一对一精确查找匹配,在这方面VLOOKUP易用且用时少优势比较明显。

泡泡:那今天你跟我讲讲LOOKUP吧,什么场合可以召唤大神?

萌二:好啊。我一个一个例子道来,你要是情绪还没酝酿好,就先收藏好,需要的时候再拿出来慢慢看啦。

4200052ba8161319275a2afae4c308de.gif

1一对一精确查找

一对一精确查找是VLOOKUP的强项,不过LOOKUP同样能做到。LOOKUP一般有两种写法,在不同的情景使用优缺点不同。

例1:6207e1901b9ca5c69f51caaeb6e438fc.png

总结:

一对一精确查找最优方法是VLOOKUP,写法

=VLOOKUP(查找目标,查找范围,返回值的列数,0)

可用LOOKUP,写法

=LOOKUP(1,0/(条件列=条件),满足条件的结果列)

此例不建议使用LOOKUP基础查找写法,较多要求限制容易出错。

2对应范围查找(模糊查找)

LOOKUP基础查找要求查找范围要先按查找列升序排列好,这在精确匹配中稍显麻烦,但在模糊匹配中大有用处。

例2:2442b9bb1b27834d18ca23e10065a690.png

例2要求按业绩划分标准,根据各人员实际业绩所在范围找到对应等级。

求解步骤:

先把业绩划分标准$E$2:$F$6按E列升序排序;

C2输入公式=LOOKUP(B2,$E$2:$E$6,$F$2:$F$6),下拉到C11,搞定。

另外,例1提到“查询的条件可以高于查询条件列的最大值,但是不能低于查询条件列的最小值”,何解?

你试试在例2中输入1600(大于查询条件列的最大值1200),可以得到结果“顶尖”;若输入-100(低于查询条件列的最小值0),则会报错#N/A

3反向查找

VLOOKUP要求查找目标必须在查找区域的第一列,LOOKUP则无此限制。

如例3,若让VLOOKUP根据姓名查找业绩那很简单,但反过来根据业绩查找对应姓名,就需要迂回一下。

例3:b3845f8773f0ddc72b4e4ef89aea0022.png

公式说明:

公式1=VLOOKUP(D2,IF({1,0},$B$1:$B$5,$A$1:$A$5),2,0)

VLOOKUP借用IF函数重建数组(相当于对调A、B列),运算量较大。

公式2=LOOKUP(1,0/($B$1:$B$5=D2),$A$1:$A$5),例3用LOOKUP较优。

4多条件查找

多条件查找类似反向查找,若不借用辅助列,VLOOKUP仍需借用IF函数重建数组。

例4中VLOOKUP公式须按CTRL+SHIFT+ENTER三键结束,不能手动输入花括号{}。LOOKUP按常规写法就可以,你随意。

例4:88cc7b5a360b164d0eb919f70a6ec965.png

公式说明:

公式1=VLOOKUP(E2&F2,IF({1,0},$A$1:$A$11&$B$1:$B$11,$C$1:$C$11),2,0),按CTRL+SHIFT+ENTER三键结束;

公式2=LOOKUP(1,0/(($A$1:$A$11=E2)*($B$1:$B$11=F2)),$C$1:$C$11),也可以把中间的*号换成/,改为

=LOOKUP(1,0/($A$1:$A$11=E2)/($B$1:$B$11=F2),$C$1:$C$11)。

若有更多条件,依此类推,=LOOKUP(1,0/((条件一)*(条件二)*(条件三)),C:C)。

LOOKUP的条件不限于等号=,求大于小于都可以,如例5。

例5:a1709e4ef7d5f22da2d1a6323697214a.png

5二分法求最值

有点强迫症的人,可能会恨我在这里打出了“二分法”仨字——因为这3只字我也还在理解中...囧

但解决实际问题,你不知道什么叫“二分法”也没关系,只要记住“查找满足条件的最后一个记录”可以用以下通用格式写公式就好啦,能帮你解决大问题。

LOOKUP(1,0/(条件),查找数组或区域)

LOOKUP(2,1/(条件),查找数组或区域)

例6:0b8bab5e30e2ec132b37c860d5c60479.png

二分法求最值还有很多其他应用,比如例7对合并单元格的引用。而对有合并单元格的数据条件求和,则可以用SUMPRODUCT嵌套LOOKUP写公式解决。

例7:

7bdc4f5697327e7e8647eede8c86feab.png

9d7e72354ca6197d32c9f24f1e174320.gif

好啦,今天先分享这么多哦。如果你有补充或有具体问题需解决,欢迎留言或后台发消息给萌二◕‿◕ 

Cya~

声明

本文为作者原创,欢迎发送给朋友分享到朋友圈。转载请联系后台(侵权必究)

动图来自网络,如有异议请联系删除。

 • End • 

编辑 | Libby

图表 | Libby

7bc972eca7b56a4f4d19e155aa775e05.png

我的贰零壹柒

过客◕‿◕

ad92778abdc5f51736832bdf3f426f28.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值