Excel 近期新增了一个功能相当强大的函数——GROUPBY。如果你经常需要执行分组汇总操作,这个函数将极大提升你的工作效率。它允许你灵活指定分组字段与汇总方式,操作过程比传统的数据透视表或手工公式更加直观高效。接下来我们将详细拆解其具体用法。
基本语法
先了解它的核心结构。GROUPBY 函数的语法非常简洁:
GROUPBY(分组依据, 汇总依据, [可选参数])
第一个参数告诉 Excel 按照哪一列或哪个表达式进行分组;第二个参数则指定要对分组后的哪些列执行汇总计算。至于可选参数,通常用于控制排序或显示方式,目前使用默认值即可满足多数需求。
一个简单的入门示例
假设你手中有一份销售数据,列分别为“产品名称”“销售数量”“销售额”。现在需要按产品名称对销售数量和销售额进行汇总。
操作步骤非常直观:先选择一块空白区域用于输出结果(Excel 会自动扩展区域),然后在公式栏中输入:
=GROUPBY(A2:A10, A2:A10, SUM(B2:B10), SUM(C2:C10))
这里 A2:A10 既是分组依据(按产品名称分组),又是返回的分组标签列;SUM(B2:B10) 和 SUM(C2:C10) 分别对销售数量和销售额进行求和。按下回车后,一张按产品名称汇总的表格便立即呈现。无需再创建数据透视表,也无需手动合并计算,一条公式即可完成。
多条件分组:同时按多个字段
实际工作中经常需要按多个维度进行分组。例如,先按“地区”再按“产品名称”进行汇总。此时可以在分组依据参数中传入一个数组(用花括号包裹多个列范围):
=GROUPBY({A2:A10, B2:B10}, {A2:A10, B2:B10}, SUM(C2:C10))
请注意,分组依据与返回的分组标签必须一一对应。这里的 {A2:A10, B2:B10} 表示将“地区”和“产品名称”两个字段联合作为分组键,汇总结果自然生成每个地区与每个产品的组合明细。
嵌套分组:先按大维度,再按小维度
GROUPBY 还能实现嵌套分组效果。比如数据中包含“年份”和“季度”,你想先按年份分组,然后在每个年份内部再按季度分组,并汇总销售额。写法上可以在汇总参数中再嵌套一个 GROUPBY:
=GROUPBY(A2:A10, A2:A10, GROUPBY(B2:B10, B2:B10, SUM(C2:C10)))
外层 GROUPBY 按年份分组,内层 GROUPBY 在每个年份组内对季度进行分组并求和。最终结果呈现一个两级的分组汇总结构,省去了手动逐层计算的繁琐。
与常规函数搭配使用
汇总函数并不局限于 SUM。如果想查看每个产品组的平均销售额,只需将汇总参数换成 AVERAGE 即可:
=GROUPBY(A2:A10, A2:A10, AVERAGE(C2:C10))
同样,MAX、MIN、COUNT、STDEV 等函数都可以直接套用。GROUPBY 的灵活性在于,它允许你在汇总参数中直接使用任意聚合函数,甚至支持自定义 LAMBDA 表达式,计算能力几乎不受限制。
小结
GROUPBY 函数本质上将过去需要借助数据透视表或辅助列才能完成的“分组-聚合”操作,精简为一个单元格内的公式。对于日常的销售报表、库存分析以及各种按类别汇总的场景,它的意义在于让动态分析变得即时可用——数据一经修改,结果自动更新,且公式的透明度高于数据透视表,便于后期调整。如果你还未尝试过,不妨在手上的数据集中先运行一个最简单的示例,很快就能感受到效率的显著提升。
