当前位置:首页 > 微软office > Excel > 正文内容

LOOKUP,这些招式都会了吗?

zyhwxm3年前 (2022-05-09)Excel54

小伙伴们好啊,今天咱们说说LOOKUP函数。
这个函数主要用于在查找范围中查询指定的查找值,并返回另一个范围中对应位置的值。该函数支持忽略空值、逻辑值和错误值来进行数据查询,几乎可以完成VLOOKUP函数和HLOOKUP函数的所有查找任务,接下来咱们就一起看看LOOKUP函数的常用套路。


一、返回B列最后一个文本:
=LOOKUP("々",B:B)
或是=LOOKUP("做",B:B)


二、返回B列最后一个数值:
=LOOKUP(9E+307,B:B)


三、填充合并单元格
如下图所示,B列姓名使用了合并单元格,使用以下公式可以得到完整的填充:
=LOOKUP("做",B$2:B2)


四、返回A列最后一个非空单元格内容
=LOOKUP(1,0/(B:B<>""),B:B)
简单说说公式的计算过程:
先使用B:B<>""判断B列是否不等于空单元格,得到一组有逻辑值TRUE和FALSE构成的内存数组。
然后用0除以这些逻辑值,在四则运算中,逻辑值TRUE相当于1,FALSE相当于0,相除之后,得到由错误值和0构成的新内存数组。其中的0,就是0/TRUE的结果,表示符合条件。
最后用1作为查找值,在这个内存数组中找到0的位置,并返回第三参数中对应位置的内容。
如果有多个符合条件的记录,LOOKUP默认以最后一个进行匹配。


五、逆向查询
如下图,要根据E3单元格的商品名称,查询对应的销售经理。公式为:
=LOOKUP(1,0/(C2:C10=E3),A2:A10)
单条件查询的模式化写法为:
=LOOKUP(1,0/(条件区域=条件),查询区域)


六、多条件查询
如下图,要根据F3单元格的商品名称和G3单元格的部门,查询对应的销售经理。公式为:
=LOOKUP(1,0/((D2:D10=F3)*(B2:B10=G3)),A2:A10)
多条件查询的模式化写法为:
=LOOKUP(1,0/((条件区域1=条件1)*(条件区域2=条件2)),查询区域)


七、模糊查询等级
如下图,要根据B列销售业绩返回对应的评定标准,E~F列为标准对照表。
C2单元格公式为:
=LOOKUP(B2,$E$3:$F$6)
这种方法可以取代IF函数完成多个区间的判断查询,前提是对照表的首列必须是升序处理。


八、提取有规律的数字
如下图,要提取出B列混合内容中的数值。
公式为:
=-LOOKUP(1,-RIGHT(B2,ROW($1:$9)))
本例中,数值都位于右侧,因此先用RIGHT函数从B2单元格右起第一个字符开始,依次提取长度为1至9的字符串。
添加负号后,数值转换为负数,含有文本字符的字符串则变成错误值。
LOOKUP函数使用1作为查询值,在由负数、0和错误值构成的数组中,忽略错误值提取最后一个等于或小于1的数值。最后再使用负号,将提取出的负数转为正数。


九、带合并单元格的查询
如下图,根据D2单元格的姓名查询A列对应的部门。
公式为:
=LOOKUP("做",INDIRECT("A1:A"&MATCH(D2,B1:B10,0)))
MATCH(D2,B1:B10,0)部分,精确查找D2单元格的姓名在B列中的位置。返回结果为7。
用字符串"A1:A"连接MATCH函数的计算结果7,变成新字符串"A1:A7"。
接下来,用INDIRECT函数返回文本字符串"A1:A7"的引用。
如果MATCH函数的计算结果是5,这里就变成"A1:A5"。同理,如果MATCH函数的计算结果是10,这里就变成"A1:A10"。也就是这个引用区域会根据D2姓名在B列中的位置动态调整。
最后用=LOOKUP("做",引用区域)返回该区域中最后一个文本的内容。
简化后的公式相当于:
=LOOKUP("做",A1:A7)
返回A1:A7单元格区域中最后一个文本,也就是江北公司,得到“苏明哲”所在的部门。


图文作者:祝洪忠

本篇文章来源于微信公众号:Excel之家ExcelHome


版权声明:本文版权归原作者所有,仅供技术参考;

                 若有违反您个人权益,请留言反馈删除相关信息;


本文链接:http://zyh-c.myds.me:8086/post/104.html

标签: excel

相关文章

一堆Excel快捷键,这个才是南波万

一堆Excel快捷键,这个才是南波万

Excel中的快捷键实在是太多太多了,你觉会得哪个快捷键最厉害呢?如果有机会让我来给他们排名,我一定要把CTRL+T排在第一位。 让我们来看看它有多牛。 功能1.一键美化。之前的表格是这样子的。按下CTRL+T之后:标题...

六个Excel序号技巧,新手老手都实用

六个Excel序号技巧,新手老手都实用

一、序列填充生成序号适用范围:生成较少的常规序号。 在首个单元格内输入数字1,然后按住单元格右下角的填充柄向下拖动,然后在【自动填充选项】中选择【序列填充】。  二、直接拖动生成序号适用范围:生成任意步长值的序...

八个公式真简单,月薪少说三千三

八个公式真简单,月薪少说三千三

小伙伴们好啊,今天和大家分享一组常用的函数套路,小伙伴们遇到类似问题可以直接拿来套用即可。1、IF函数用来完成非此即彼的判断。如下图,要判断成绩是否合格。公式:=IF(C2>=60,"及格","不及格")用法...

IF函数,专治选择困难症

IF函数,专治选择困难症

小伙伴们好啊,今天咱们说一个看起来特别简单,但是用处特别大的函数——IF。如果有妹纸问你,这个周末准备怎么过?你会说:看天气情况吧,不同的天气,我的选择也不一样。每个包含“如果……那么……否则……”的句子,在Exc...

EXCEL如何计算两个年份间的年数,月数和天数差

EXCEL如何计算两个年份间的年数,月数和天数差

在EXCEL中,我们如果要求两个年份间的年数,月数和天数差,可以用到"DATEDIF"函数,那么具体怎么操作呢?请看如下操作。 方法/步骤 首先,打开需要编辑的数据表,输入你要编辑的数据,点击年数单元格; 在菜单栏点击"公式...

动态折线图,其实很简单

动态折线图,其实很简单

今天老祝和大家分享一个图表有关的知识。先来看这样一组数据,是某餐饮公司各连锁店1~6月份的销售情况:咱们用这组数据来制作一个折线图,用来展示各连锁店各月份的销售变化趋势,先来看效果:要实现这样的效果其实非常简单,咱...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。