一、问题的提出
平时,我们在使用Excel时,最常用的功能就是求和了,一说到求和你可能想到用sum函数,但是如果sum的求和区域有#value #Div等错误值怎么办?如下图,记算C列中工资的总和。
直接用肯定会报错,有没有方法可以解决这个问题呢?
二、解决办法
1. sum+iferror的办法
思路是用iferror来判断错误值,如果遇到错误值直接返回0,所以公式是:
python
=SUM(IFERROR(C2:C12,0))
我们在F2中输入上述公式即可过滤错误,输出求和值。
2. 使用sumif函数
sumif的语法是,直接在F2中输入下面的公式
python
=SUMIF(C2:C12,"<0",C2:C12)
sumif的语法是SUMIF(range(范围), criteria(条件), [sum_range](求和范围))
使用sumif时,我们可以利用条件筛选出有效的数字进行计算,由于范围和求和范围一样,上述公式也可以缩略为:
python
=SUMIF(C2:C12,"<0")
3. 使用AGGREGATE函数
aggregate这个词本义是指:聚集;集合;合计,即指将多个部分或元素汇总成一个整体。这里用到公式。
=AGGREGATE(9, 2, C2:C12)
这个公式中:
9: 表示 SUM(求和)的聚合操作编号。
2: 表示忽略错误值(与 IFERROR 的效果一致)。
C2:C12: 是要计算的范围。
参数1:
aggregate表示要执行的聚合函数类型, 取值范围为 1 到 19,每个编号对应不同的聚合函数:
编号 | 聚合函数 | 描述 |
---|---|---|
1 | AVERAGE | 平均值 |
2 | COUNT | 计数(仅数值单元格) |
3 | COUNTA | 非空值计数(包括文本) |
4 | MAX | 最大值 |
5 | MIN | 最小值 |
6 | PRODUCT | 乘积 |
7 | STDEV.S | 样本标准偏差 |
8 | STDEV.P | 总体标准偏差 |
9 | SUM | 求和 |
10 | VAR.S | 样本方差 |
11 | VAR.P | 总体方差 |
12 | MEDIAN | 中位数 |
13 | MODE.SNGL | 众数(单众数) |
14 | LARGE | 第 k 大值 |
15 | SMALL | 第 k 小值 |
16 | PERCENTILE.INC | 百分位数(包含边界) |
17 | PERCENTILE.EXC | 百分位数(不含边界) |
18 | QUARTILE.INC | 四分位数(包含边界) |
19 | QUARTILE.EXC | 四分位数(不含边界) |
参数2 用于控制忽略哪些数据类型 。有效取值为 0 到 7:
值 | 描述 |
---|---|
0 | 不忽略任何数据 |
1 | 忽略隐藏行 |
2 | 忽略错误值 |
3 | 忽略隐藏行和错误值 |
4 | 忽略空值 |
5 | 忽略隐藏行和空值 |
6 | 忽略错误值和空值 |
7 | 忽略隐藏行、错误值和空值 |
参数3:是作用区域
参数 4:[k](可选)
当 function_num 为以下编号时,k 参数必填:
14(LARGE):k 表示第 k 大值。
15(SMALL):k 表示第 k 小值。
16 或 17(PERCENTILE):k 表示所需百分位(介于 0 到 1)。
18 或 19(QUARTILE):k 表示所需的四分位值(1 到 4)。
例如:
AGGREGATE(14, 2, A1:A10, 3) 表示忽略错误值后,求 A1:A10 中第 3 大的值。
三、学后总结
-
Excel公式知识点密集,易学难精,需要不断结合实例,多多操练,才能深悟要领。
-
Excel中实现同一操作的函数往往不限制一种,因此有非常大的灵活性。采用多种方法实现殊途同归的目的,可以进一步进入对函数的理解,强化应用技能。
-
最近一直在研究Excel函数和公式,喜欢学的朋友不妨关注一下Cajia的视频号或者某音号:Excel小白入门,上面有很实用的案例,还有专题群讨论,学起来一点儿也不枯燥。