当然这不可能在短期内发生,需要较长一段时间的累积。
一个简单的案例,不能完全理解也没有关系,感受气氛为主。
案例:要汇总各产品的总金额。
产品列手动去重,总金额列条件计数,这是常规方式。
=SUMIF(B:B,E3,C:C)
数据汇总
新的解决方案
UNIQUE去除重复提取产品:
=UNIQUE(B3:B12)
UNIQUE去重
=SUMIF(B3:B12,UNIQUE(B3:B12),C3:C12)
注意:第1步中的UNIQUE公式作为SUMIF的第2参数,使SUMIF成为数组公式。
SUMIF数组公式条件求和
用HSTACK将前2步的结果水平堆叠:
=HSTACK(UNIQUE(B3:B12), SUMIF(B3:B12,UNIQUE(B3:B12),C3:C12))
HSTACK整合数据
数组形式的表头{“产品”,”总金额”},通过VSTACK与上1步的结果垂直堆叠:
=VSTACK({'产品','总金额'}, HSTACK(UNIQUE(B3:B12),SUMIF(B3:B12,UNIQUE(B3:B12),C3:C12)))
VSTACK整合数据
表尾包括两项内容:“共计”,所有数据的和。用HSTACK将两者水平堆叠:
HSTACK('共计',SUM(SUMIF(B3:B13,UNIQUE(B3:B13),C3:C13)))
将其堆叠到上一步结果的尾部:
=VSTACK({'产品','总金额'}, HSTACK(UNIQUE(B3:B13),SUMIF(B3:B13,UNIQUE(B3:B13),C3:C13)), HSTACK('共计',SUM(SUMIF(B3:B13,UNIQUE(B3:B13),C3:C13))))
VSTACK整合
公式很长,可以用LET简化
=LET(x,UNIQUE(B3:B13), y,SUMIF(B3:B13,x,C3:C13), VSTACK({'产品','总金额'},HSTACK(x,y),HSTACK('共计',SUM(y))))
快捷键CTRL+T将源数据转为超级表
超级表
汇总数据作为一个区域存在,原数据任何变动将随之更新。
效果
是时候转变观念了,超级表+新函数将极大地提升工作效率。
联系客服