VIP学员的问题,求每个项目最后一年发生收入确认金额的年份。
图片
问题不难,不过内容一再更改,于是出现了很多条公式,跟卢子来看看。
LOOKUP是查找最后一个满足条件的值,条件是金额大于0,然后返回第一行的年份。
=LOOKUP(1,0/(B2:E2>0),$B$1:$E$1)
图片
语法:
=LOOKUP(1,0/(条件区域=条件),返回区域)
1.当金额存在0
01 返回0的年份
条件是金额不等于空。
=LOOKUP(1,0/(B2:E2<>""),$B$1:$E$1)
图片
02 返回不为0的年份
条件依然用金额大于0。
=LOOKUP(1,0/(B2:E2>0),$B$1:$E$1)
图片
2.当金额存在0和空文本
经常会出现空文本或者隐藏字符,比如不小心输入,或者用公式引用让错误值显示空文本。
空文本大于0,如果直接判断是错误的,可以通过--区域,将空文本转成错误值,LOOKUP查找的时候忽略错误值,从而可以正常查找。
=LOOKUP(1,0/(--B2:E2>0),$B$1:$E$1)
图片
3.当金额存在0、空文本和负数
可以再加绝对值ABS,这样不管正负都可以判断。
=LOOKUP(1,0/(ABS(--B2:E2)>0),$B$1:$E$1)
图片
绝对值是临时想出来的,最开始是判断金额为数字,并且不等于0。
=LOOKUP(1,0/(ISNUMBER(B2:E2)*(B2:E2<>0)),$B$1:$E$1)
图片
同一个问题,针对不同数据源,公式可能差异很大。因此,提问最好都上传表格,方便测试。
最后,再看另一个学员的案例,查找内容里面含有特殊符号~,因此用VLOOKUP查找出错。
图片
而LOOKUP的经典查找模式不管遇到啥都可以解决。
=LOOKUP(1,0/(G9=$D$8:$D$13),$E$8:$E$13)图片
学会一个用法,解决所有难题,真好!
链接:https://pan.baidu.com/s/1YmvvJ8pWPvDeQwVeEoTfMw?pwd=12my
提取码:12my
推荐:LOOKUP函数的一个冷门用法,可以帮财务会计节省大量时间
上篇:好用!文件夹内工作簿名称一键提取以及重命名(改善版)
图片
作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。