MATCH隐藏着一个比LOOKUP的经典查找模式更简洁的用法,90%的人没用过
发布日期:2024-08-25 11:58    点击次数:170

VIP学员的问题,达到的效果是每一行的最后一列数据,颜色突出显示。

图片

查找最后一个非空的内容,卢子以前讲过很多次,用LOOKUP。

=LOOKUP(1,0/(B2:L2<>""),B2:L2)

图片

最后一个日期有可能跟前面一样,比如06-13出现多次,因此不能直接根据日期判断。可以用列号判断,也就是COLUMN。

=LOOKUP(1,0/(B2:L2<>""),COLUMN(B:L))

图片

判断最后的列号,还有一个更简洁的公式,用MATCH。不管是LOOKUP,还是MATCH,都可以用1查找0,都是返回最后满足条件的值。

=MATCH(1,0/(A2:L2<>""))

图片

知道了最后的列号,再跟COLUMN比较,一样的显示颜色。

选择区域A2:L13(区域很重要,不同区域的公式会不一样),条件格式,新建规则,使用公式确定要设置格式的单元格,输入下面的公式(区域跟单元格写公式不一样需要锁定),设置背景色,确定。

=MATCH(1,0/($A2:$L2<>""))=COLUMN(A1)

图片

图片

问题搞定,接下来再说一下MATCH的用法。分别查找产品的最后日期、最先日期。

图片

前面说过用1查找0,就是返回最后的值的行号,再嵌套INDEX就是最后的日期。

=INDEX(B:B,MATCH(1,0/(D2=A:A)))

图片

用0查找0,而且添加MATCH的第三参数为0,就是最先的行号,再嵌套INDEX就是最先的日期。

=INDEX(B:B,MATCH(0,0/(D2=A:A),0))

图片

以上是变形过的公式,实际上MATCH默认的用法,就是查找最先的。

=INDEX(B:B,MATCH(D2,A:A,0))

图片

函数除了Excel官方提到的用法外,用心挖掘还会有一些新用法,能够帮你解决很多新问题。

图片

作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。