EP02. “Negative Numbers to Zero 负数转零”
🔒 登录后可标记已读- 教一个很实用的小技巧:用 MAX 函数把计算结果里的负数强制变成 0,正数保持不变
- 常用在库存、余额这类「不应该出现负数」的场景
- 不需要前置知识
- 学完能直接套用在自己的表格上
重点内容
适用版本
桌面版通用(Excel 365 / 2021 / 2019 等)。
基础做法(会产生负数)
- 选中单元格 C1
- 输入公式
=A1-B1 - 拖动 C1 右下角填充手柄向下复制公式
- 如果 B 列数字大于 A 列,C 列会出现负数
用 MAX 函数把负数变 0
- 把公式改成
=MAX(0,A1-B1) - 向下拖动填充手柄复制公式
- 结果:只要 A1-B1 算出来是负数,就会显示 0;正数则维持原本的计算结果
原理说明
MAX 函数会返回参数里最大的那个值。把 0 跟计算结果放在一起比较,如果计算结果是负数,0 自然比它大,所以返回 0;如果计算结果是正数,就会返回计算结果本身。
函数速查
| 函数 | 语法 | 用途 | 例子 |
|---|---|---|---|
| MAX | =MAX(number1,[number2],...) | 返回参数中最大值 | =MAX(0,A1-B1) |
学完你会
- ✅ 能用
=MAX(0,A1-B1)把计算结果里的负数强制变成 0 - ✅ 理解 MAX 函数在这里的原理:拿 0 跟计算结果比大小
- ✅ 能分辨「负数转零」(MAX)和「负数转正数」(ABS)是两种不同需求
常见错误
- 只用
=A1-B1就直接拿去做后续加总或图表,没注意到负数已经混进结果里 - 忘记把 0 放进 MAX 的参数里,写成
=MAX(A1-B1)就失去转零的效果 - 需要「负数转正数」而不是「负数转零」时误用了这个公式,两者是不同的需求(前者应该用 ABS 函数)
Sources
Blog / Website: