本文介绍 Microsoft Excel 中 SUMIFS函数 (函数:函数是预先编写的公式,可以对一个或多个值执行运算,并返回一个或多个值。函数可以简化和缩短工作表中的公式,尤其在用公式执行很长或复杂的计算时。)的公式语法和用法。
说明
对区域 (区域:工作表上的两个或多个单元格。区域中的单元格可以相邻或不相邻。)中满足多个条件的单元格求和。例如,如果需要对区域 A1:A20 中符合以下条件的单元格的数值求和:B1:B20 中的相应数值大于零 (0) 且 C1:C20 中的相应数值小于 10,则可以使用以下公式:
=SUMIFS(A1:A20, B1:B20, ">0", C1:C20, "<10")
要点 SUMIFS 和 SUMIF 函数的参数顺序有所不同。具体而言,sum_range 参数在 SUMIFS 中是第一个参数,而在 SUMIF 中则是第三个参数。如果要复制和编辑这些相似函数,请确保按正确的顺序放置参数。
语法
SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)
SUMIFS 函数语法具有以下参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
注解
- 仅在 sum_range 参数中的单元格满足所有相应的指定条件时,才对该单元格求和。例如,假设一个公式中包含两个 criteria_range 参数。如果 criteria_range1 的第一个单元格满足 criteria1,而 criteria_range2 的第一个单元格满足 critera2,则 sum_range 的第一个单元格计入总和中。对于指定区域中的其余单元格,依此类推。
- sum_range 中包含 TRUE 的单元格计算为 1;sum_range 中包含 FALSE 的单元格计算为 0(零)。
- 与 SUMIF 函数中的区域和条件参数不同,SUMIFS 函数中每个 criteria_range 参数包含的行数和列数必须与 sum_range 参数相同。
- 您可以在条件中使用通配符,即问号 (?) 和星号 (*)。问号匹配任一单个字符;星号匹配任一字符序列。如果要查找实际的问号或星号,请在字符前键入波形符 (~)。
示例
示例 1
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
- 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
- 按 Ctrl+C。
- 在 Excel 中,创建一个空白工作簿或工作表。
- 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
- 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
| A | B | C |
---|
已销售数量 | 产品 | 销售人员 | 5 | 苹果 | 1 | 4 | 苹果 | 2 | 15 | 香梨 | 1 | 3 | 香梨 | 2 | 22 | 香蕉 | 1 | 12 | 香蕉 | 2 | 10 | 胡萝卜 | 1 | 33 | 胡萝卜 | 2 | 公式 | 说明 | 结果 | =SUMIFS(A2:A9, B2:B9, "=香*", C2:C9, 1) | 计算以“香”开头并由销售人员 1 售出的产品的总量。 | 20 | =SUMIFS(A2:A9, B2:B9, "<>香蕉", C2:C9, 1) | 计算由销售人员 1 售出的产品(不包括香蕉)的总量。 | 30 |
|
示例 2:根据支付的利息对银行帐户中的金额求和
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
- 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
- 按 Ctrl+C。
- 在 Excel 中,创建一个空白工作簿或工作表。
- 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
- 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
| A | B | C | D | E |
---|
总计 | 帐户 1 | 帐户 2 | 帐户 3 | 帐户 4 | 金额(人民币) | 100 | 390 | 8321 | 500 | 支付利息 (2000) | 1% | 0.5% | 3% | 4% | 支付利息 (2001) | 1% | 1.3% | 2.1% | 2% | 支付利息 (2002) | 0.5% | 3% | 1% | 4% | 公式 | 说明 | 结果 | | | =SUMIFS(B2:E2, B3:E3, ">3%", B4:E4, ">=2%") | 2000 年利息高于 3% 以及 2001 年利息高于或等于 2% 的每个银行帐户的总额。 | 500 | | | =SUMIFS(B2:E2, B5:E5, ">=1%", B5:E5, "<=3%", B4:E4, ">1%") | 2002 年利息介于 1% 到 3% 之间以及 2001 年利息高于 1% 的每个银行帐户的总额。 | 8711 | | |
|
示例 3:对特定日期的降雨量求和
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
- 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
- 按 Ctrl+C。
- 在 Excel 中,创建一个空白工作簿或工作表。
- 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
- 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
| A | B | C | D | E |
---|
每日测量值 | 第一天 | 第二天 | 第三天 | 第四天 | 雨水(总毫米数) | 3.3 | 0.8 | 5.5 | 5.5 | 平均温度(度) | 35 | 19 | 19 | 37.5 | 平均风速(公里/小时) | 6.5 | 19.5 | 6 | 6.5 | 公式 | 说明 | 结果 | | | =SUMIFS(B2:E2, B3:E3, ">=40", B4:E4, "<10") | 计算平均温度至少为摄氏 20 度以及平均风速小于每小时 10 公里的这些天的总降水量。 只能对单元格 B2 和 E2 求和,因为,对于每个列(从 B 到 E),行 3 和 4 中的值必须分别满足 criteria1 和 criteria2。单元格 B3 和 B4 同时满足这两个条件,E3 和 E4 也是如此。但是,C3 或 C4 哪个条件都不满足。最后,尽管 D4 满足 criteria2,但 D3 不满足 criteria1。 | 8.8 | | |
|
示例 4:对特定日期的上午和下午降雨量求和
本示例对示例 3 中的数据做了进一步扩展,将每日的降雨量、平均温度、平均风速分为两个阶段,每阶段 12 个小时。
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
- 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
- 按 Ctrl+C。
- 在 Excel 中,创建一个空白工作簿或工作表。
- 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
- 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
| A | B | C | D | E |
---|
上午和下午的测量值 | 第一天 | 第二天 | 第三天 | 第四天 | 上午:雨水(总毫米数) | 1.3 | 0 | 1.5 | 3 | 下午:雨水(总毫米数) | 2 | 0.8 | 4 | 2.5 | 上午:平均温度(度) | 36 | 24 | 20 | 18 | 下午:平均温度(度) | 34 | 14 | 18 | 37 | 上午:平均风速(公里/小时) | 13 | 6 | 8 | 1 | 下午:平均风速(公里/小时) | 0 | 33 | 4 | 12 | 公式 | 说明 | 结果 | | | =SUMIFS(B2:E3, B4:E5, ">=40", B6:E7, "<10") | 计算平均温度至少为摄氏 20 度以及平均风速小于每小时 10 公里的 12 小时周期的总降水量。 只对单元格 B3、C2 和 D2 求总和,因为其相应单元格同时满足这两个条件。B3 的相应单元格为 B5 和 B7,C2 的相应单元格为 C4 和 C6,而 D2 的相应单元格为 D4 和 D6。 作为被排除在运算外的数据示例,B2 的相应单元格(B4 和 B6)没有同时满足这两个条件;具体就是,单元格 B6 不满足条件,因为其值 (13) 大于 criteria2 (10)。 | 3.5 | | |
|
示例 5:以引用形式或使用通配符输入条件
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
- 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
- 按 Ctrl+C。
- 在 Excel 中,创建一个空白工作簿或工作表。
- 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
- 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
| A | B | C | D | E | F | G |
---|
房子 | 平方英尺 | 卧室数 | 浴室数 | 是否有车库 | 建造年份 | 价格 | House1 | 1200 | 2 | 1 | 是 | 1940 | ¥125,000
|
House2 |
1580
| 3 |
1.5 |
否 |
1965 | ¥217,000
|
House3
| 2200 |
4 |
3 |
是 |
2003 | ¥376,000
|
House4 |
1750 |
3 |
2.5 |
是 |
2001 | ¥249,000
|
House5 |
2140 |
4
|
3
|
是
|
1998
| ¥199,000 | =">"&FIXED(SUM(1,1),0) | ="是" | ="y*" | | | | | 公式 | 说明 | 结果 | | | =SUMIFS(G2:G6,C2:C6,A7,E2:E6,B7,F2:F6,">1999",F2:F6,"<2004") | 将至少有 3 间卧室和 1 个车库且截至 2009 年建造年限在 5 至 10 年之间的那些房子的价格相加。 | 625000 | | | =AVERAGEIFS(G2:G6,C2:C6,">2",E2:E6,C7,F2:F6,">1999",F2:F6,"<2004") | 返回至少有 3 间卧室和 1 个车库且截至 2009 年建造年限在 5 至 10 年之间的房子的平均价格。 | 312500 | | |
|
addition if/then addition if/then addition if/then addition if/then addition if/then conditional sum conditional sum conditional sum conditional sum conditional sum if function if function if function if function if function if and sum functions if and sum functions if and sum functions if and sum functions if and sum functions if sum if sum if sum if sum if sum sum if/then sum if/then sum if/then sum if/then sum if/then sum of a range based on a condition sum of a range based on a condition sum of a range based on a condition sum of a range based on a condition sum of a range based on a condition sum of operations sum of operations sum of operations sum of operations sum of operations sumif function sumif function sumif function sumif function sumif function xl