SUMPRODUCT函数除了用于乘积求和之外,还可以用于条件求和,如下图
示例公式 =SUMPRODUCT(C2:C9*D2:D9*(B2:B9="蔬菜"))
公式解释 (B2:B9="蔬菜")这部分返回的是一个逻辑数组,如果等于蔬菜返回TRUE,否则返回FALSE,在excel中TRUE我们可以看作是1,FALSE可以看作是0,那么C2:C9*D2:D9*(B2:B9="蔬菜")这部分就等于3个数组相乘,B2是蔬菜那么返回TRUE(1),第一行的算式就是C2×D2×1,B2如果不是蔬菜,那么算式就变成C2×D2×0,根据数学知识我们知道0乘以任何数都是0,1乘以任何数值不变,这样就可以过滤掉不是蔬菜的销售金额。
❺SUBTOTAL 分类汇总
函数语法 SUBTOTAL(function_num,ref1,ref2, ...)
function_num: 为 1 到 11之间的数字,指定使用何种函数在列表中进行分类汇总计算
值 | 代表的函数 |
1 | AVERAGE 平均值 |
2 | COUNT 非空值单元格计数 |
3 | COUNTA 非空值单元格计数(包括字母) |
4 | MAX 最大值 |
5 | MIN 最小值 |
6 | PRODUCT 乘积 |
7 | STDEV 标准偏差值(忽略逻辑值和文本) |
8 | STDEVP 标准偏差值 |
9 | SUM求和 |
10 | VAR 给定样本的方差(忽略逻辑值和文本) |
11 | VARP |
ref1……refN: 要对其进行分类汇总计算的区域或引用。必须是对单元格区域的引用
示例公式 =SUBTOTAL(9,E2:E9)
公式解释 对E2:E9区域进行求和统计
SUBTOTAL函数仅对可见单元格汇总计算,能够计算在筛选状态下的求和。利用该特性,我们可以让它进行筛选时自动求和,如下图所示:
动画演示图片
❻AGGREGATE 返回列表或数据库中的合计
函数语法 AGGREGATE(function_num, options, ref1, [ref2], …)
function_num:和SUBTOTAL函数类似,是一个介于 1 到 19 之间的数字,指定要使用的函数
function_num | 代表的函数 |
1 | AVERAGF |
2 | COUNT |
3 | COUNTA |
4 | MAX |
5 | MIN |
6 | PRODUCT |
7 | STDEVS |
8 | STDEV.P |
9 | SUM |
10 | VAR.S |
11 | VAR.P |
12 | MEDIAN |
13 | MODE.SNGL |
14 | LARGE |
15 | SMALL |
16 | PERCENTILE.INC |
17 | QUARTILE.INC |
18 | PERCENTILE.EXC |
19 | QUARTILE.EXC |
options:一个数值,决定在函数的计算区域内要忽略哪些值
options | 忽略值 |
0或省略 | 忽略嵌套SUBTOTAL和AGGREGATE函数 |
1 | 忽略隐藏行、嵌套SUBTOTAL和AGGREGATE函数 |
2 | 忽略错误值、嵌套SUBTOTAL和AGGREGATE函数 |
3 | 忽略隐藏行、错误值、嵌套SUBTOTAL和AGGREGATE函数 |
4 | 忽略空值 |
5 | 忽略隐藏行 |
6 | 忽略错误值 |
7 | 忽略隐藏行和错误值 |
ref1……refN:可以是一个数组或数组公式,也可以是对要为其计算聚合值的单元格区域的引用
示例公式 =AGGREGATE(9,7,E2:E9)
公式解释 忽略E2:E9区域中的隐藏值和错误值进行求和