秒杀Excel数据透视表! excel新函数GROUPBY真强大
脚本之家
今天跟大家分享一个非常强大的新函数——GROUPBY函数,它不但能对数据分类汇总,还能进行排序与筛选,功能非常的强大,下面我们就来一起学习下!
一、GROUPBY函数
GROUPBY:根据指定的字段对数据进行分组、聚合、排序和筛选
语法:=GROUPBY (row_fields,values,function,[field_headers],[total_depth],[sort_order],[filter_array])
- 参数1:对那一列进行分组统计
- 参数2:对那一列进行计算
- 参数3:分类汇总的计算方式是什么
- 参数4:数据是否包含表头,需要显示吗
- 参数5:总计需要显示吗,以及显示的方式
- 参数6:是否需要排序
- 参数7:是否需要对结果进行筛选
这个函数参数一共有7个,虽然看起来多,但是也并不算复杂,只有第一到第三参数是必选参数,其余的参数都是可以省略的。下面我们就来举几个例子简单的学习下这个函数
一、分类汇总
=GROUPBY(A1:A10,E1:E10,SUM)
- 参数1:A1:A10 采购方式所在的列
- 参数2:E1:E10 采购总价所在的列
- 参数3:SUM表示求和
第三参数是有很多汇总方式的,详见下图,可以选择自己需要的,这个就是它的基本用法
二、多层汇总
公式:=GROUPBY(A1:B10,D1:E10,AVERAGE)
这个函数不是仅仅只能对一列进行分类汇总,还能设置多个汇总字段。
下图就是根据采购方式以及商品名称的数据用户金额的平均值
其实在这里我们可以简单的把第一参数看作是透视表的行区域,第二参数看做是透视表的值区域。第三参数说计算方式。
三、是否包含表头
上面的案例中都有没有表头的,如果你想显示表头,就需要设置第四参数,输入对应的代码即可
- 0:数据源中没有表头
- 1:数据源中有表头但是不显示
- 2:数据源中没有表头,但是需要生成1个新的表头
- 3:数据源中有表头,并且显示表头
在这个参数中0,1,3都比较容易理解,关键是参数2,如果数据源中没有表头,就会生成新的表头,以字段1,值1这样的命名方式来添加新表头,这个表头也是无法修改的,效果如下图所示
四、是否需要显示总计与小计
GROUPBY不但能显示总计还能显示小计,就需要设置第五参数,也是需要输入对应的代码来设置小计与总计
- 0:没有总计
- 1:显示总计
- 2:显示总计与小计
- -1:在顶部显示总计
- -2:在顶部显示总计与小计
具体的效果如下图所示,关键点需要明白,如果你想显示小计,第一参数至少需要设置2列数据,否则的话就会显示为错误值 -1与-2是将小计与总计放在表格上方的就不再演示了,大家可以操作这试一下
五、是否需要排序
在这里正数表示升序,负数表示降序,只能根据1列数据来做升序或者降序的排序。排序列数是根据函数的结果来指定的
如下图,将第六参数设置为2,就表示根据结果表的第2列进行升序或者降序的排序
六、是否需要进行筛选
比如现在我们不需要APP的数据,就可以考虑将其筛选掉。就需要设置第七参数
公式:=GROUPBY(A1:A10,E1:E10,SUM,3,1,2,A1:A10<>"APP")
以上就是GROUPBY函数的使用方法,它更像是一个缝合怪,把subtoatl,sort,filter缝合在一起功能更加强大,大家可以试着操作下