groupby函数是一个超级透视器: excel不加班搞定数据分类汇总
GROUPBY函数是Excel和WPS表格新增的动态数组函数,用于对数据进行快速分组统计,类似数据透视表但更加灵活。它可根据指定字段对数据分类汇总,并自动生成动态数组结果。
参数挺多,但都挺好理解:
=GROUPBY(行字段, 汇总区域, [聚合函数], [标题], [总计], [排列方式], [筛选条件], [字段关系])

1、单列行字段汇总
输入公式:
=GROUPBY(A2:A5,C2:C5,SUM)
分组依据的行字段A2:A5(月份),需要汇总的数据区域C2:C5(销售额),聚合函数SUM(求和函数)。即对每个月份的销售额进行汇总求和。

2、多列行字段汇总
输入公式:
=GROUPBY(A2:B5,C2:C5,SUM)
分组依据的行字段A2:B5(月份与销售员),需要汇总的数据区域C2:C5(销售额),聚合函数SUM(求和函数)。即对每个月份各个销售员的销售额进行汇总求和。

3、多函数组合(求和、平均、计数)
输入公式:
=GROUPBY(B2:B5,C2:C5,HSTACK(SUM,AVERAGE,COUNT))
HSTACK为横向合并函数,此时将多个函数平行合并(SUM,AVERAGE,COUNT),对同一列数据分别执行不同计算,分别为求和、求平均值,计数。

4、标题显示(是否显示原数据表头)
输入公式:
=GROUPBY(A1:B5,C1:C5,SUM,3)
我们只需要将第4参数修改为模式3,即可将首行标题行显示出来。
注:第一参数与第二参数的数据区域需要包含首行标题行。因为只有当标题行被包含在了A1:B5与C1:C5区域之内,我们才会有选择显示或不显示标题的权利。

修改第4参数:
=GROUPBY(A1:B5,C1:C5,SUM,1)
我们只需要将第4参数修改为模式1,即可将首行标题行隐藏。
注:第一参数与第二参数的数据区域需要包含首行标题行。因为只有当标题行被包含在了A1:B5与C1:C5区域之内,我们才会有选择显示或不显示标题的权利。

5、总计与小计(多层分组显示总计和小计)
通常默认省略跳过第5参数,此时默认显示总计行:
=GROUPBY(A1:B5,C1:C5,SUM,3)
当我们将增加第5参数调整为0时,总计行自动隐藏:
=GROUPBY(A1:B5,C1:C5,SUM,3,0)

当我们将第5参数调整为2时,总计行与小计行同时出现:
=GROUPBY(A1:B5,C1:C5,SUM,3,2)

当我们将第5参数调整为-1时,总计行更换为顶端总计行:
=GROUPBY(A1:B5,C1:C5,SUM,3,-1)

6、排序(按某列降序或降序排列)
默认省略跳过第6参数显示无规则乱序状态:
=GROUPBY(A1:B5,C1:C5,SUM,3,0)
当我们增加并将第6参数调整为“3”时:
=GROUPBY(A1:B5,C1:C5,SUM,3,0,3)
表示对第3列的“销售额”列,进行升序(从小到大)排序。
原则:第6参数是几表示对返回数组区域的第几列排序;如果是正数,表示升序排序;如果是负数,表示降序排序。

7、筛选
当我们省略或跳过第7参数时,表示无条件分组统计:
=GROUPBY(A1:B5,C1:C5,SUM,3,0,3)
当我们添加第7参数时:
=GROUPBY(A1:B5,C1:C5,SUM,3,0,3,B2:B5="李四")
增加条件B2:B5="李四",即只有当B2:B5销售员数据区域为“李四”时,我们才进行分组统计,即只筛选销售员为李四的分类汇总结果。

以上全部为GROUPBY函数基础参数的解释。那么我们在实际的职场工作中用它高效解决最多的问题是什么呢?下面我们继续举两个实用的案例,看看GROUPBY函数在其中发挥什么关键的作用。
高频使用案例
案例1:文本合并
如下图所示:
我们想要将A列相同的省份信息所对应的城市信息合并到一行显示。

我们输入函数公式:
=GROUPBY(A1:A5,B1:B5,ARRAYTOTEXT,3,0)
第3参数聚合函数设置为ARRAYTOTEXT函数,用于将数组或单元格区域中的数据转换为文本格式,并合并到一个单元格中或以文本数组的形式返回。这样本例可将城市合并为文本合并到一个单元格中。第4参数3显示标题。第5参数0不显示总计行。

案例2:二维表转一维表
我们想要将A1:D4区域二维表转换为F1:H10区域的一维表。

聚合函数核心逻辑:
=IF({1,0},N,TOCOL(B1:D1))
- {1,0}:生成数组 {TRUE, FALSE},用于引导后续操作。
- TRUE(1):保留原始产量数值(即N代表的当前值)。
- FALSE(0):提取季度标签(通过TOCOL转换)。
- N:代表当前分组产量数值,例如“1车间”对应的原始产量数值6000、8000、3500。作用是将横向分布的产量数值按行转换为纵向单列。
TOCOL(B1:D1):B1:D1:原始季度标题(如“1季度”“2季度”“3季度”)。TOCOL(B1:D1):将横向的季度标题转换为垂直列(如“1季度、2季度、3季度”循环排列)。目的是为每个产量数值匹配对应的季度标签。每个产量数值会循环对应到季度标签(“1季度、2季度、3季度”),形成“产量数值+季度标签”的配对数组溢出结果。

完善函数:
=GROUPBY(A1:A4,B1:D4,IF({1,0},N,TOCOL(B1:D1)),,0)
GROUPBY函数对A1:A4行字段作为分组依据,即按“车间”分组。值字段B1:D4(需处理的数据区域)。用上一步IF函数作为核心聚合函数逻辑,不显示标题,不显示总计。

相关文章

告别反复设置打印区域! Excel实现动态分页显示数据的技巧
在日常处理Excel数据时,打印数据往往是一项必不可少的任务,然而,许多用户都曾面临过这样的困境:在设定了打印区域后,随着数据的更新,新增的内容在打印时却未能被包含2025-06-25
还有SUMIFS做不到的? FILTER+SUM函数实现excel数据多条件求和的技巧
FILTER+和SUM函数是excel和wps中都有的函数,结合这两个函数可以进行多条件求和,下面我们就来看看详细使用方法2025-06-24
数据追踪神器! 开启Excel的监视器记录所有修改的步骤的技巧
就是自己做好的表格,不知道被给谁修改了,在开会的时候,数据被老板指简直错的离谱,有没有什么办法可以记录Excel中的修改记录,最好详细到时间以及修改人,下面我们就来2025-06-24
90%的人不知道的偷懒公式! VLOOKUP+FILTER数据筛选实现双杀
VLOOKUP和FILTER都是数据筛选比较常用的函数,如果这两个函数比较的haul,那个函数更好用?详细请看下文介绍2025-06-23
FILTER函数这招我后悔没早学! excel中10秒搞定数据查询的技巧
之前说到查找函数,大家肯定会想到vlookup,不过现在还有一个新的函数可以供大家使用,它就是filter,今天就和大家分享一下filter的用法2025-06-23
让你轻松掌握表格数据查询! 10个excel函数VLOOKUP的应用实例
Vlookup函数的用法之前我们也发了很多,但贴近工作用的Vlookup函数应用示例却很少,今天给大家带来一期Vlookup函数示例大全,希望能给大家的工作带来帮助2025-06-19
怎么做双系列并列堆积条形图? excel数据分布类图表的制作方法
多维度图表?不如试试这个并列堆积条形图,当存在2个数据系列、且类别较多的时候,我们可以采用条形图并列展示的形式来可视化数据,详细请看下文介绍2025-06-18
打工人集体沸腾! 一分钟做出让领导满意的excel数据分析可视化报表
不会Excel,怎么做可视化报,每次做的表格都又快又好,将领导要的各项数据指标用图表展示,清晰明了,领导超喜欢2025-06-04
Excel怎么算加班时长? 根据考勤打卡数据计算加班次数加班时长技巧
如何利用Excel高效计算加班小时数及相应的加班费?这一应用场景实际上也是Excel在薪资核算领域中的典型示例,下面我们就来看看详细案例2025-06-04
Excel表格带单位求和不用愁! 3个高效小技巧轻松搞定数据求和
在数据处理的选择上,Excel无疑是一款强大且好用的工具,然而,当数据带有单位时,Excel的内置求和函数可能会遇到一些问题,下面我们就来看看这个问题的解决办法2025-06-04




最新评论