根据条件在Excel中求最小或底部N个值的和
Author: Xiaoyang Last Modified: 2025-05-07
在之前的教程中,我们讨论了 如何对数据范围内的最小n个值求和。本文将进行更高级的操作——根据一个或多个条件在Excel中求最低n个值的总和。
根据条件在Excel中求最小或底部N个值的和
假设我有如下截图所示的数据范围,现在我想对产品“苹果”的最低3个订单求和。
在Excel中,要根据条件对范围内的底部n个值求和,可以使用SUM、SMALL和IF函数创建数组公式。通用语法为:
{=SUM(SMALL(IF(range=criteria,values),{1,2,N}))}
数组公式,需同时按下 Ctrl + Shift + Enter 键。
数组公式,需同时按下 Ctrl + Shift + Enter 键。
- 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 中的产品等于“苹果”,则返回订单列表 (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 值并返回数组中的底部3个值,因此结果是:{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((range1=criteria1)*(range2=criteria2) *(range3=criteria3)…,values),{1,2,N}))}
数组公式,需同时按下 Ctrl + Shift + Enter 键。
数组公式,需同时按下 Ctrl + Shift + Enter 键。
- Range1=criteria1: 匹配第一个条件的第一个单元格范围;
- Range2=criteria2: 匹配第二个条件的第二个单元格范围;
- Range3=criteria3: 匹配第三个条件的第三个单元格范围;
- values: 包含要加总的底部n个值的列表;
- N: 第N个底部值。
例如,我想对Kerry销售的产品“苹果”的底部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:
- Excel 的 SMALL 函数根据排序后的升序位置返回一个数值。
- IF:
- IF 函数测试特定条件,并返回你提供的对应于 TRUE 或 FALSE 的值。
更多文章:
- 求最小或底部N个值的和
- 在 Excel 中,使用 SUM 函数很容易对一系列单元格求和。有时,你可能需要对数据范围内的最小或底部 3、5 或 n 个数字求和,如下面的截图所示。在这种情况下,SUMPRODUCT 和 SMALL 函数可以帮助你在 Excel 中解决这个问题。
- 按账龄小计发票金额
- 根据账龄对发票金额求和(如下截图所示)可能是 Excel 中的一项常见任务,本教程将展示如何使用普通的 SUMIF 函数按账龄小计发票金额。
- 忽略错误求所有数字单元格的和
- 当对包含一些错误值的一系列数字求和时,普通的 SUM 函数将无法正常工作。要仅对数字求和并跳过错误值,AGGREGATE 函数或与 IFERROR 函数结合使用的 SUM 函数可以帮到你。
最佳的办公生产力工具
Kutools for Excel - 助您脱颖而出
🤖 | Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行 | 生成代码 | 创建自定义公式 | 分析数据并生成图表 | 调用Kutools函数… |
热门功能: 查找、高亮或标记重复项 | 删除空行 | 合并列或单元格而不丢失数据 | 四舍五入无需公式 ... | |
超级VLookup: 多条件 | 多值 | 跨多个工作表 | 模糊查找... | |
高级下拉列表: 简易下拉列表 | 级联下拉列表 | 多选下拉列表... | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较列以 选择相同和不同的单元格 ... | |
精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...) ... | |
排名前15的工具集: 12个 文本 工具(添加文本,删除特定字符 ...) | 50多种 图表 类型(甘特图 ...) | 40多种实用 公式(基于生日计算年龄 ...) | 19个 插入 工具(插入二维码,从路径插入图片 ...) | 12个 转换 工具(小写金额转大写,汇率转换 ...) | 7个 合并与拆分 工具(高级合并行,分割Excel单元格 ...) | ... 还有更多 |
Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...
Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑
- 一秒内切换数十个打开的文档!
- 每天为您减少数百次鼠标点击,告别鼠标手。
- 在查看和编辑多个文档时,您的工作效率将提高50%。
- 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。