若是不会LOOKUP函数的这个用法就太可惜了

网友投稿 469 2022-10-07

若是不会LOOKUP函数的这个用法就太可惜了

如下图所示,A列是一些乱七八糟的数据,现在需要提取最后出现的数值,你会怎么写函数公式呢?

有一个经典的LOOKUP函数套路是这样的=LOOKUP(9^9,A:A)计算结果是10086。

这个公式总结成套路,如下:=LOOKUP(一个比查询范围同类数据都大的值,单列或单行查询范围,单列或单行结果范围)如果该套路的第3参数省略,则将查询范围视为结果范围。

例如:=LOOKUP(9^9,A:A)

等同于:=LOOKUP(9^9,A:A,A:A)

LOOKUP函数的这个套路性用法有什么用呢?如果只是提取A列最后的数值……似乎也没啥作用?其实不然。我先举个简单的小栗子。如下图所示,是一份考评表。需要在N列计算每个人最后参与考评的月份。

例如A2单元格的看见星光,最后考评的月份是3月(3月就失业了),A4单元格的肥书记,最后考评月份是12月……那么函数应该怎么写呢?=LOOKUP(250,B2:M2,B:M)

这就是我们刚刚说的LOOKUP套路性用法不是?=LOOKUP(一个比查询范围同类数据都大的值,单列或单行查询范围,单列或单行结果范围)

B2:M2是单行查询范围,B:M是对应的单行结果范围,250比查询范围内所有的同类数据都大,因此返回最后出现的数值对应的月份。

打个响指,你要是觉得250不好听,换成其它数值也可以,比如521、666、888、999等等,没别的要求,只要比查询范围内所有的同类型数据都大就行了。再举个小栗子。

如下图所示,需要把A列数据前面的数值提取到B列,例如204看见星光,结果为204,165606If结果为165606,等等……

说来你不信,前面的数字是月薪..▼

函数我们可以写成这样:=LOOKUP(9^9,--LEFT(A2,ROW(:)))

LEFT(A2,ROW(:))部分,从A2单元格的左边,依次提取1、2、3、4……直至15位的数据,返回结果:2,20,204,204看,204看见……再通过减负运算(–),将LEFT函数的计算结果转换为数值。此时纯文本无法进行数学运算,例如–204看,它将返回错误值#VALUE!。

若是不会LOOKUP函数的这个用法就太可惜了

这个部分计算结果是一个内存数组▼{2;20;204;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}

LOOKUP天生忽略错误值,再用一个比查询范围所有数值都大的数值9^9进行查询,也就返回最后出现的数值,即204。

怎么样,是不是有点意思呢?

最后,留一个扩展题儿,如何快速提取A列最后出现的文本值呢?

示例文件下载,百度网盘..https://pan.baidu.com/s/1G2AquJgJyekj8CSHiXCbFQ提取码: rd28

原文:https://mp.weixin.qq.com/s/8bNYKuIOh2pyixQpTmcyyA

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:excel如何勾选内容(excel中如何做勾选)
下一篇:按任意字段将总表拆分为多个分表
相关文章