欢迎转发和点一下“在看”,文末留言互动!
置顶公众号或设为星标及时接收更新不迷路
小伙伴们好,今天扫地僧又要和大家见面了。每次他一出来,总是能帮我们解决很多难题,今天也不例外!
左侧的源数据中,对于有多项商品的,都会在最后做一个小计。那么,如何在右侧的单元格中提取开票金额呢?
01
LOOKUP函数应用
遇到这种结构的问题,就可以考虑使用LOOKUP函数。
在单元格J3中输入下列公式,三键回车并向下拖曳即可。
=SUM((LOOKUP(ROW($C$3:$C$11),IF($C$3:$C$11<>"",ROW($C$3:$C$11)),$C$3:$C$11)=I3)*($F$3:$F$11))/2
在源数据中同一家公司下有多个项目时,需要将每一个项目都对应该家公司名称。
LOOKUP(ROW($C$3:$C$11),IF($C$3:$C$11<>"",ROW($C$3:$C$11)),$C$3:$C$11)
上面LOOKUP函数这部分,就是做这样一个工作。
IF($C$3:$C$11<>"",ROW($C$3:$C$11))
IF函数部分,对于不为空的单元格,返回对应的行号,结果为{3;4;5;FALSE;FALSE;8;FALSE;FALSE;FALSE}。
LOOKUP(ROW($C$3:$C$11),IF($C$3:$C$11<>"",ROW($C$3:$C$11)),$C$3:$C$11)
利用LOOKUP函数,查找ROW($C$3:$C$11),同时并返回区域中$C$3:$C$11中对应数据。
SUM((LOOKUP(ROW($C$3:$C$11),IF($C$3:$C$11<>"",ROW($C$3:$C$11)),$C$3:$C$11)=I3)*($F$3:$F$11))/2
接下来就简单了,SUM函数按条件求和。注意,最后要再除以2,原因是有小计,数据重复计算了一次。
-END-
长按下方二维码关注EXCEL应用之家
面对EXCEL操作问题时不再迷茫无助
我就知道你“在看”