根据条件对最小或底部 N 个值求和(Excel)
在前面的教程中,我们已经介绍了 如何对数据区域中的最小 n 个值求和。本文将进一步讲解如何按一个或多个条件对最低 n 个值进行求和操作。

根据条件对最小或底部 N 个值求和(Excel)
假设我有如下截图中的数据,现在我想统计 Apple 产品的最低 3 个订单。

在 Excel 中,如果您需要根据条件对某一区域的底部 n 个值进行求和,可以通过组合 SUM、SMALL 和 IF 函数的数组公式来实现。其通用语法如下:
{=SUM(SMALL(IF(range=criteria,values),{1,2,N}))}
Array formula, should press Ctrl + Shift + Enter keys together.
Array formula, should press Ctrl + Shift + Enter keys together.
- range=criteria:用于匹配特定条件的单元格区域;
- values:包含要汇总的底部 n 个值的列表;
- N:表示第 n 小的数值。
为解决上述问题,请在空白单元格输入以下数组公式:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
然后按下 Ctrl + Shift + Enter 组合键,即可得到如截图所示的正确结果:

公式解读:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
- IF(($A$2:$A$14=D2), $B$2:$B$14):在 A2:A14 区域中,如果产品为“Apple”,则返回订单列表(B2:B14)中对应的数值;否则显示 FALSE。您将获得如下结果:{800;FALSE;FALSE;FALSE;1000;230;FALSE;FALSE;1600;FALSE;900;FALSE;500}。
- SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}):该 SMALL 函数会自动忽略 FALSE 值,并返回数组中最小的三个值,因此结果为:{230,500,800}。
- SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))=SUM({230,500,800}):最后,SUM 函数会对数组中的数字求和,得出结果:1530.
提示:处理两个及以上条件:
如果需要根据多个条件对底部 n 个值求和,只需在 IF 函数中通过 * 字符添加其他区域和条件,方法如下:
{=SUM(SMALL(IF((range 1=criteria 1)*(range 2=criteria 2) *(range 3=criteria 3)…,values),{1,2,N}))}
Array formula, should press Ctrl + Shift + Enter keys together.
Array formula, should press Ctrl + Shift + Enter keys together.
- Range 1=criteria 1:用于匹配第一个条件的单元格区域;
- Range 2=criteria 2:用于匹配第二个条件的单元格区域;
- Range 3=criteria 3:用于匹配第三个条件的单元格区域;
- values:包含要汇总的底部 n 个值的列表;
- N:第 n 小值。
例如,我想统计由 Kerry 销售的 Apple 产品中底部 3 个订单的总和,请应用以下公式:
=SUM(SMALL(IF(($A$2:$A$14=E2)*($B$2:$B$14=F2), $C$2:$C$14),{1,2,3}))
然后按下 Ctrl + Shift + Enter 组合键,即可获取所需结果:

相关函数介绍:
- SUM:
- SUM 函数可用于对数值进行求和。您可以对单个数值、单元格引用、区域,或三者的任意组合进行加总。
- SMALL:
- SMALL 函数可根据指定的位置,返回列表中按数值升序排列后的对应数值。
- IF:
- IF 函数用于判断特定条件,并根据结果为 TRUE 或 FALSE 返回您预设的对应值。
更多相关文章:
- 对最小或底部 N 个数求和
- 在 Excel 中,我们通常可以通过 SUM 函数轻松对一组单元格进行求和。但有时,您可能需要对最小值、底部 3 个、5 个或某一区域内的 n 个数字进行求和,如下图所示。此时,结合使用 SUMPRODUCT 和 SMALL 函数即可轻松实现您的需求。
- 按账龄分类汇总发票金额(在 Excel 中)
- 在 Excel 中,根据账龄汇总发票金额是一项常见操作。本文将为您演示如何使用常规的 SUMIF 函数,按账龄对发票金额进行汇总。
- 忽略错误对所有数字型单元格求和
- 当对包含部分错误值的数值区域求和时,常规的 SUM 函数可能无法正常计算。若只需对数字求和并跳过错误值,可使用 AGGREGATE 函数,或将 SUM 与 IFERROR 函数组合实现。
最强最佳办公效率工具
Kutools for Excel —— 助您脱颖而出
| 🤖 | KUTOOLS AI 助手:基于数据分析的革命性升级智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 超级 VLookup:多条件查找 | 多值返回 | 跨多表查找 | 模糊查找…… | |
| 高级下拉列表:便捷下拉列表 | 联动下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列 | 移动列 | 切换隐藏列可见状态 |对比列与选择相同/不同单元格…… | |
| 精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿和表管理器|资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表批量发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线等) ...... | |
| 顶级 15 工具集:12 文本工具(添加文本、删除特定字符……)| 50+ 图表 类型(甘特图……)| 40+ 实用公式(基于生日计算年龄……)| 19 插入工具(插入二维码、按路径插入图片……)| 12 转换工具(小写金额转大写、汇率转换……)| 7 合并和拆分工具(高级合并行、拆分 Excel 单元格……)|…… 以及更多 |
在您的首选语言使用 Kutools —— 支持英语、西班牙语、德语、法语、中文及 40+ 种语言!
Kutools for Excel 拥有超过 300 项功能,让您一键直达所需……
Office Tab —— 让 Microsoft Office(包括 Excel)支持标签式阅读与编辑
- 一秒即可切换数十个已打开的文档!
- 每天为您减少数百次鼠标点击,轻松告别鼠标手困扰。
- 在同时查看和编辑多个文档时,让您的工作效率提升高达 50%。
- 为 Office(包括 Excel)带来高效标签页体验,畅享如同 Chrome、Edge 和 Firefox 般的便捷操作。