WPS表格新函数GROUPBY,分组汇总原来可以这么简单!
大家好,我是墨云轩,一名教办公软件的中职教师。今天想和大家聊聊WPS表格里的一个新函数——GROUPBY。
前阵子学校做期末成绩统计,同事拿来一份全校的成绩表,让我按班级、按科目汇总平均分。放在以前,我的第一反应是”数据透视表走起”。但这次我试着用了GROUPBY函数,没想到几秒钟就搞定了,真心觉得方便,忍不住来分享一下。
一、GROUPBY是什么?
简单说,GROUPBY就是一个分组汇总函数。以前我们需要用SUMIF、AVERAGEIF或者数据透视表才能完成的事情,现在一个函数就能搞定。
它的好处是:
- 公式写一次,数据更新后结果自动更新
- 结果自动溢出,不需要手动下拉填充
- 比数据透视表更灵活,可以嵌套在其他函数里使用
说实话,刚看到这个函数时,我也被它的8个参数吓了一跳。但别怕,真正必填的只有3个参数,上手其实不难。
二、函数语法
先看官方语法:
=GROUPBY(行字段, 值字段, 函数, [汇总方式], [是否显示总计], [排序], [筛选], [字段关系])
我来逐个解释一下(尽量用大白话):

是不是比想象中简单?我们直接看几个实际例子。
三、实战案例
案例1:按部门汇总销售额
假设我有这样一张销售表:

要按部门汇总总销售额,公式写:
=GROUPBY(A1:A6, B1:B6, SUM,3)
结果自动溢出,不用下拉,不用按Ctrl+Shift+Enter,是不是很爽?具体看动图:

小提示:参数末尾的”3″表示所选数据包含标题行并显示,这样结果会自动显示”部门”和”销售额”作为列标题。
案例2:按班级统计平均分
这是我最常用的场景。学校成绩表大概是这样的:

如果我想看每个班的语文平均分,公式就是:
=GROUPBY(A1:A20,C1:C20,AVERAGE,3,0),具体操作看动图:

如果想同时看语文、数学、英语三科的平均分呢?很简单,值字段选多列就行:
=GROUPBY(A1:A20,C1:E20,AVERAGE,3,1),具体看动图:

三个科目的平均分一次全部出来,每个科目单独一列,清清楚楚。
案例3:按销售额从高到低排序
回到案例1的销售数据,我想按部门汇总后,再按销售额从高到低排序。公式变成:
=GROUPBY(A1:A6,B1:B6,SUM,3,0,2),具体看动图:

注意最后一个参数”2″,它表示按第2列(也就是销售额)降序排列。如果是”1″就是第1列排序,正数升序、负数降序。想按销售额升序的话写”-2″就行。
案例4:只统计指定条件的数据
这个功能特别实用。比如我只想看”销售一部”和”销售二部”的数据,其他部门暂时不看,可以在公式里加筛选条件:
=GROUPBY(A1:A6,B1:B6,SUM,3,0,,A1:A6<>”销售三部”),具体看动图:

筛选参数写一个判断表达式,只有满足条件的数据才会参与汇总。是不是很方便?
四、和传统方法比一比
有朋友可能会问:我用数据透视表不也能实现吗?为啥要用函数?
我个人的体会是这样的:

当然,数据透视表在交互式分析方面还是很有优势的,GROUPBY更适合需要自动化、公式化的场景。两者各有千秋,看大家的使用习惯。
五、一些小提醒
- GROUPBY需要较新版本的WPS。建议更新到WPS 18166版本或更高版本,太老的版本可能没有这个函数。
- 结果自动溢出。GROUPBY的结果会占用多个单元格,写公式的时候要确保下方没有其他数据,避免被覆盖。
- 和PIVOTBY是兄弟函数。GROUPBY是按行分组,PIVOTBY是行和列都分组,功能更强大。
写在最后
说实话,第一次看到GROUPBY函数的8个参数时,我也觉得有点头大。但真正用起来才发现,常用的就前面3个参数,后面的都是锦上添花的功能。
WPS这两年一直在进步,从WPSAI到新函数不断推出,确实让我们这些办公软件的使用者感受到了国产软件的用心。作为一个教办公软件的老师,看到这些变化,心里还是挺高兴的。
好了,今天的分享就到这里。您平时在做数据汇总时,是用数据透视表还是函数呢?如果有更好的用法,欢迎在评论区交流!
我是墨云轩,热衷分享办公小技巧,边学习,边分享,每天进步一点点!
夜雨聆风