小伙伴们好啊,今天咱们来学习一个Excel函数公式的综合实例。需要使用公式按部门进行汇总,并按补助费从高到低,最终合并成一段文字:以Excel 365/最新版WPS表格为例,参考公式为:
=TEXTJOIN(" ",,GROUPBY(A2:A14&":",C2:C14,SUM,,0,-2))
这个公式看起来好复杂啊……,别急,咱们拆分开再看,就容易理解了。
先看GROUPBY函数:
这个函数能够按指定条件对数据进行分类,自动计算每组的总和、平均值等,一键生成汇总结果。类似咱们常用的数据透视表。
数据透视表的优点是操作直观,适合快速分析,但缺点是不够灵活,数据更新后需要手动刷新。
而GROUPBY函数的优点是灵活、自动更新、但它需要编写公式,有一定的学习成本。
函数的参数有一大堆,咱们先来了解前三个必选参数的作用:
=GROUPBY(分组依据列, 要汇总的列, 汇总方式, [……], [……])
回到咱们的问题中,下面这部分公式是什么作用呢?
GROUPBY(A2:A14&":",C2:C14,SUM,,0,-2)
第一参数A2:A14&":",在现有的部门名称后面加上冒号,作为分组依据。
第二参数C2:C14,表示要汇总的列。
第三参数SUM,表示汇总方式为求和。
第四个参数省略,表示不生成表头。
第五个参数使用0,表示不生成汇总行。
第六个参数使用-2,表示对第二列升序排序。
这部分的计算完成后,就是按部门汇总,并且对补助费升序排序后的结果。

最后,再使用TEXTJOIN函数,对这些数据进行连接:
=TEXTJOIN(" ",,GROUPBY(A2:A14&":",C2:C14,SUM,,0,-2))
第一参数使用空格,作为各行数据之间的间隔符号。第二参数省略,表示包含合并区域中可能存在的空白单元格。
合并完成后,就得到按部门汇总,并且对汇总金额从高到低排列的文字了:
财务部:1227 安监部:873 销售部:659 法务部:638 质保部:479