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

表亲们,开门见山,星光先提一个小问题……

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

有一个经典的LOOKUP函数是酱紫的:

=LOOKUP(9^9,A:A)

结果是1011。

这个公式总结成套路,如下:

=LOOKUP(一个比查询范围所有值都大的数值,单列或单行查询范围,单列或单行结果范围)

如果该套路的第3参数省略,则将查询范围视为结果范围。

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

LOOKUP函数的这个套路性用法有什么用呢?如果只是提取A列最后的数值……似乎也没啥意思咧?

其实不然。

先举个简单的小栗子。

如下图所示,是一份考评表。需要在N列计算每个人最后参与考评的月份。例如看见星光,就是欲淑临疯风流涕淌的俺了,最后考评的月份是9月,老祝最后的考评是7月等等。

那么函数怎么写呢?

=LOOKUP(200,B2:M2,B$1:M$1)

这就是我们刚刚说的LOOKUP套路性用法不是?

=LOOKUP(一个比查询范围所有值都大的数值,单列或单行查询范围,单列或单行结果范围)

B2:M2是单行查询范围,B$1:M$1是对应的单行结果范围。

再举个小栗子。

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

函数我们可以写成这样:

=LOOKUP(9^9,--LEFT(A2,ROW($1:$15)))

LEFT(A2,ROW($1:$15))部分,从A2单元格值的左边,依次提取1~2~3……直至15位的数据,例如4,48,487,487看,487看见……

再通过减负运算(--),将LEFT函数的计算结果转换为数值。此时纯文本无法进行数学运算,例如--487看,它将返回错误值。

LOOKUP忽略错误值,再用一个比查询范围所有数值都大的数值9^9进行查询,也就是提取最后的数值,即487。

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

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

~安~

(0)

相关推荐