#EXCEL# ;#分类汇总#

使用环境:WIN10 HOME版,WPS 2019


我们日常EXCEL使用中,可能会遇到将原始数据或者软件导出数据汇总到如下这样的表格中。

表头制作:

日期:年月可以根据原始数据获取也可以手动输入,具体每天的制作,公式为:=IF((COLUMN()-COLUMN($A$2))<=DAY(EOMONTH(TEXT($A$1&"01","####-##-##"),0)),TEXT(COLUMN()-COLUMN($A$2),"00"),"-")。

星期几制作,公式为:=IF(B$2<>"-","周"&TEXT(WEEKDAY(TEXT($A$1&B$2,"####-##-##"),1),"aaa"),B$2)。表格样式根据需要进行美化。

按星期几进行汇总:

按星期几汇总

具体使用公式为:{=iferror(text(sumproduct(INDIRECT(concat(ADDRESS(3,SMALL(if(exact(原始数据!$B$1:$AF$1,b$1),COLUMN(原始数据!$B$1:$AF$1),4^100),$a2),1,true,"原始数据"),":",address(10000,SMALL(if(exact(原始数据!$B$1:$AF$1,b$1),COLUMN(原始数据!$B$1:$AF$1),4^100),$a2),1,true)))),"[=0]-"),"END")},公式输入完要使用CTRL+SHIFT+ENTER键,进行数组公式确认。因为公式里面用到了small数组。

这个里面的关键点是确认第一个周几、第二个周几。。。。到底在表格中那一列。然后INDIRECT进行转换可用于公式中。

如果要进行分类获取,ADDRESS里面的行我们可以用MATCH进行获取。SUMPRODUCT函数可以换成INDEX函数。