subtotal是一个功能非常强大的统计函数,强大到常见的求和,求均值,最大值最小值,count计数这些它一个都可以做到。 那么subtotal是怎么来实现这么多功能的呢?下面我们一起来看一下。 1语法subtotal(参数1,区域1,区域2。。。区域n) subtotal的强大之处在于参数1,参数1不同的值会有不同的计算方式,下面列举常用的几个值:
上面表格的意思是: 当参数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函数是一样的 参数1为2时为计数,效果和count函数是一样的 参数1为3时统计非空单元格数量,效果和counta函数是一样的。 至于count和counta的区别,大家可以回复11查看详情; 这里简单提一下:count只统计内容是数字的单元格,而counta统计非空白内容的单元格。 参数1为4时求最大值,效果和max函数是一样的 参数1为6时求乘积,效果和product函数是一样的 【注】product函数是用来求乘积的,比如product(区域1)返回的就是区域1中所有数的乘积。回复45查看product函数介绍。 PRODUCT(A1:B2,D3:E4)也就是 1*2*6*7*4*5*9*10 = 151200 参数1为9时求和,效果和sum函数是一样的 看了上面的表格和实例,大家已经发现了,为什么参数1的值为1和101意义都一样是average,那么它们有什么区别呢? 答案是: 1-9表示区域中如果有的行被隐藏了,那么隐藏的行还是参与计算的。 101-109表示区域中隐藏的行不参与计算。 【注】只是隐藏行会有区别,隐藏列不会有计算区别的。 举个例子,把第2列隐藏,参数1为9和109分别计算看一下。 把第二行隐藏/显示,发现SUBTOTAL(9,A1:E4)的值没有变化,而SUBTOTAL(109,A1:E4)的值有变化。 第二行被隐藏时,SUBTOTAL(109,A1:E4)没有计算第二行的数字。 实践一下,是否真的对隐藏列没有区别呢? 可以看到把B列隐藏还是显示SUBTOTAL(9,A1:E4)和SUBTOTAL(109,A1:E4)的计算结果都是一样的,都不会受到干扰,标明9和109确实对隐藏列没有区别之分。 subtotal函数虽然使用起来比较复杂,参数1的各个值也不太好记忆,但是学会这一个函数会让你一个打十个。 而且更强大的是subtotal函数可以不计入隐藏行,这一点是其他普通函数无法做到的。 总之,subtotal绝对是你不可不学的统计函数。 |
|