与 30万 读者一起学Excel
学员的问题,各种格式下求余额。余额就是当天最后一个金额,如果当天没有就获取前一个日期最后一个金额。
其实,这种不管怎么变就那么几个套路,还难不倒卢子,一起来看看。
1.日期格式相同,获取每天的余额
这种非常简单,借助LOOKUP函数查找最后一个满足条件的值这个特点即可解决。
=LOOKUP(G2,B:E)
2.日期格式不同,获取每天的余额,每天只有一个对应值
这种可以借助函数将两边的日期格式转换成一样的,然后再处理。
左边的用DAY函数提取日。
右边的用SUBSTITUTE函数将日替换掉,再用--将文本数字转换成数值。
有了这2个辅助列,就变得很简单,继续用LOOKUP函数查找。
这是一种思路,最后也可以直接将3条公式合并起来。
=LOOKUP(--SUBSTITUTE(H2,"日",""),DAY($B$2:$B$8),$F$2:$F$8)
还是刚刚的2个表格,现在只要查找当天的余额,如果当天没有余额的显示空白,又该如何处理?
刚刚的2个案例是用LOOKUP函数查找区间的2种语法,也叫模糊查找。其实LOOKUP函数的语法非常多,现在用精确查找来解决剩下的2个问题。
=IFERROR(LOOKUP(1,0/(G2=$B$2:$B$39),$E$2:$E$39),"")
=IFERROR(LOOKUP(1,0/(--SUBSTITUTE(H2,"日","")=DAY($B$2:$B$8)),$F$2:$F$8),"")
最后总结一下LOOKUP函数的语法:
=LOOKUP(查找值,区域)
LOOKUP是一个很难精通的函数,用法灵活多变,平常第3种语法用得最多,称为经典查找模式,如果其他记不住,就记住这种就好,80%的查找都可以通过这个模式搞定。
推荐:至今已超过500人出错,LOOKUP函数这对括号问题,你被坑过没?
上篇:1分钟就解决了!接到学员问题,透视表拖拉几下就解决问题!
作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)