在 excel 里面求最小值最基础的公式就是 MIN 函数,作用是在指定数值区域里面自动找出最小的数字,原始数据修改之后结果会自动重新计算,如果需要按照条件筛选之后再求最小值,可以搭配 MINIFS 多条件求最小值,筛选可见单元格求最小值就使用 SUBTOTAL 函数,满足普通取最小、条件取最小、筛选状态取最小三类场景。之所以使用 MIN 函数,是手动在大量数据里面找最小值很容易漏看,尤其长列多行数据,MIN 可以一次性识别整片区域里面的最小数值,自动忽略文本和空单元格,不需要人工逐个对比,财务成绩表库存表经常用它查找最低值,比如最低分最低单价最低库存数量。
方法一 MIN 基础公式 普通求最小值
MIN 是所有 excel 版本通用基础函数,支持单列、单行、矩形区域、多块不连续区域。
基础公式 =MIN (A2:A20)
参数说明,括号里面填写需要查找最小值的数据区域
多区域写法 =MIN (A2:A20,C2:C20),不同区域之间用逗号隔开,跨多片数据统一找最小值
操作清单
1 点击要输出结果的空白单元格
2 输入等号,接着输入 MIN,后面跟上左括号
3 鼠标拖动选中需要计算的数据区域,有多段区域就输入逗号继续选中
4 输入右括号,按下回车,单元格直接显示区域里面的最小值
函数特性,MIN 会自动跳过空单元格、文本内容、逻辑值,只识别数字,如果区域里面全部都是文本,公式返回 0。
方法二 MINIFS 条件求最小值
如果不是全部数据求最小值,而是满足指定条件才提取最小值,使用 MINIFS 函数,支持单条件和多条件,excel2019 以及 365 版本自带该函数。
基础公式 =MINIFS (求最小值区域,条件区域,条件)
示例 =MINIFS (B2:B20,A2:A20,"一班")
含义,在 B 列数值里面,找到 A 列等于一班对应的最小数值
操作清单
1 空白单元格输入 MINIFS
2 第一个参数填写需要找最小值的数值区域
3 第二个参数填写条件所在区域
4 第三个参数填写筛选条件,可以是等于大于小于,也可以是单元格引用
5 回车得到符合条件的最小值
补充,旧版本 excel 没有 MINIFS,需要使用数组公式 MIN 加 IF 组合,写法 =MIN (IF (A2:A20="一班",B2:B20)),旧版需要按 Ctrl 加 Shift 加 Enter 数组回车。
方法三 SUBTOTAL 筛选后求最小值
普通 MIN 函数,表格筛选之后,隐藏行的数据仍然参与最小值计算,如果要求只统计筛选出来的可见单元格最小值,就要使用 SUBTOTAL 函数。
公式 =SUBTOTAL (5,A2:A20)
参数说明,第一个数字 5 代表最小值,第二个参数是数据区域
特点,筛选隐藏的数据不会参与运算,只对当前可见行计算最小值,适合动态筛选之后实时查看最低值。
三种最小值公式对比表格
| 对比项目 | MIN 函数 | MINIFS 条件最小值 | SUBTOTAL 最小值 |
|---|---|---|---|
| 功能 | 区域全部数值找最小 | 按条件匹配后找最小 | 筛选可见行找最小 |
| 版本兼容 | 全部 excel 版本 | 2019 及 365 | 全部 excel 版本 |
| 是否支持多条件 | 不支持 | 支持多条件 | 不支持条件筛选 |
| 适用场景 | 普通查找最低值 | 分类求最低分最低价 | 筛选动态统计最小值 |
进阶操作要点
负数最小值,MIN 函数支持负数,会正确识别负数里面最小数字,比如负 10 比负 2 更小,结果会返回负 10。
错误值问题,如果区域里面存在 N/A VALUE 这类错误值,MIN 公式会直接报错,想要容错可以搭配 IFERROR,例如 =IFERROR (MIN (A2:A20),0)。
零值处理,如果区域里面包含 0,MIN 会把 0 当成有效数值,如果希望排除 0 求最小值,可以使用 MINIFS,条件设置为大于 0,公式 =MINIFS (A2:A20,A2:A20,">0")。
查找最小值对应的内容,如果除了最小值,还需要找到这个最小值对应的姓名编号,可以搭配 INDEX 加 MATCH 组合公式,把最小值对应的记录提取出来。
综合来看,无任何筛选条件直接找最小值,优先使用 MIN 函数,需要分类条件求最小值就用 MINIFS,表格开启筛选之后只统计可见行最小值,选择 SUBTOTAL,旧版本 excel 没有 MINIFS 就改用 MIN 加 IF 数组公式。
【常见问题】
问题 1 excel 最小值的公式里面全部是文本为什么返回 0
回答 1 excel 最小值的公式 MIN 如果区域全部是文本,会自动忽略文本,最终返回 0,因为 MIN 只识别数字类型数据,如果想要这种情况显示空值,可以嵌套 IF 判断,避免直接输出 0。
问题 2 excel 最小值的公式筛选之后隐藏行还是参与计算怎么办
回答 2 excel 最小值的公式普通 MIN 筛选之后隐藏行依然参与最小值计算,想要只计算可见单元格最小值,替换成 SUBTOTAL 函数,参数填写 5,就可以实现筛选状态下动态求最小值。
问题 3 excel 最小值的公式旧版本没有 MINIFS 怎么条件求最小
回答 3 excel 最小值的公式旧版本 excel 没有 MINIFS 函数,可以使用 MIN 搭配 IF 数组公式,公式 = MIN (IF (条件区域 = 条件,数值区域)),输入完成之后按 Ctrl 加 Shift 加 Enter 数组回车,实现条件求最小值。
问题 4 excel 最小值的公式能不能排除 0 再找最小数字
回答 4 excel 最小值的公式可以排除 0 再找最小数字,使用 MINIFS 函数,条件设置大于 0,公式 = MINIFS (A2:A20,A2:A20,">0"),这样 0 就不会参与最小值运算。
【免责申明】
本文内容基于 excel 主流版本函数规则讲解,MINIFS 函数存在版本限制,最小值公式仅作为办公参考,正式业务统计前建议测试负数错误值空单元格场景,操作前建议备份原始表格文件。


