分享

Subtotal让你一个打十个

 完颜阿骨打矩阵 2016-01-17

Subtotal让你一个打十个

subtotal是一个功能非常强大的统计函数,强大到常见的求和,求均值,最大值最小值,count计数这些它一个都可以做到。

那么subtotal是怎么来实现这么多功能的呢?下面我们一起来看一下。

1语法

subtotal(参数1,区域1,区域2。。。区域n)

subtotal的强大之处在于参数1,参数1不同的值会有不同的计算方式,下面列举常用的几个值:

参数1同等函数意义
1average求算术平均值
2count数值计数
3counta非空单元格计数
4max最大值
5min最小值
6product求乘积
9sum求和
101average求算术平均值
102count数值计数
103counta非空单元格计数
104max最大值
105min最小值
106product求乘积
109sum求和

上面表格的意思是:

当参数1的值是1,比如subtotal(1,区域1,区域2。。。区域n)

那么subtotal此时的作用相当于average(区域1,区域2。。。区域n)

当参数1的值是2,比如subtotal(2,区域1,区域2。。。区域n)

那么subtotal此时的作用相当于count(区域1,区域2。。。区域n)

当参数1的值是9,比如subtotal(2,区域1,区域2。。。区域n)

那么subtotal此时的作用相当于sum(区域1,区域2。。。区域n)

以此类推,很神奇吧。

2实例验证

subtotal是不是真的有这么神奇呢?看几个实例:

参数1为1时为求平均值,效果和average函数是一样的

Subtotal让你一个打十个

参数1为2时为计数,效果和count函数是一样的

Subtotal让你一个打十个

参数1为3时统计非空单元格数量,效果和counta函数是一样的。

至于count和counta的区别,大家可以回复11查看详情;

这里简单提一下:count只统计内容是数字的单元格,而counta统计非空白内容的单元格

Subtotal让你一个打十个

参数1为4时求最大值,效果和max函数是一样的

Subtotal让你一个打十个

参数1为6时求乘积,效果和product函数是一样的

Subtotal让你一个打十个

【注】product函数是用来求乘积的,比如product(区域1)返回的就是区域1中所有数的乘积。回复45查看product函数介绍。

PRODUCT(A1:B2,D3:E4)也就是 1*2*6*7*4*5*9*10 = 151200

参数1为9时求和,效果和sum函数是一样的

Subtotal让你一个打十个

3隐藏与不隐藏

看了上面的表格和实例,大家已经发现了,为什么参数1的值为1和101意义都一样是average,那么它们有什么区别呢?

答案是:

1-9表示区域中如果有的行被隐藏了,那么隐藏的行还是参与计算的。

101-109表示区域中隐藏的行不参与计算。

【注】只是隐藏行会有区别,隐藏列不会有计算区别的

举个例子,把第2列隐藏,参数1为9和109分别计算看一下。

Subtotal让你一个打十个

把第二行隐藏/显示,发现SUBTOTAL(9,A1:E4)的值没有变化,而SUBTOTAL(109,A1:E4)的值有变化。

第二行被隐藏时,SUBTOTAL(109,A1:E4)没有计算第二行的数字。

实践一下,是否真的对隐藏列没有区别呢?

Subtotal让你一个打十个

可以看到把B列隐藏还是显示SUBTOTAL(9,A1:E4)和SUBTOTAL(109,A1:E4)的计算结果都是一样的,都不会受到干扰,标明9和109确实对隐藏列没有区别之分。

subtotal函数虽然使用起来比较复杂,参数1的各个值也不太好记忆,但是学会这一个函数会让你一个打十个。

而且更强大的是subtotal函数可以不计入隐藏行,这一点是其他普通函数无法做到的。

总之,subtotal绝对是你不可不学的统计函数。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多