Excel嵌套IF条件四舍五入公式编写求助:按数值区间取不同精度
修正后的可用公式
你之前的写法存在括号嵌套错误、边界值漏覆盖、IF参数顺序混乱的问题,以下是可直接使用的版本(适用Excel/WPS表格,目标单元格为T2):
=IF(T2<50, ROUND(T2/5,0)*5, IF(T2<1000, ROUND(T2,-1), ROUND(T2,-2)))
逻辑说明
- 数值小于50时:先将数值除以5,按整数位四舍五入后再乘以5,即可得到最接近的5的倍数,可读性比
ROUND(T2*2,-1)/2的写法更高,计算结果完全一致 - 数值大于等于50且小于1000时:直接用
ROUND保留-1位小数,自动按10的倍数四舍五入 - 数值大于等于1000时:用
ROUND保留-2位小数,自动按100的倍数四舍五入
如果需要严格匹配你最初要求的「大于50小于1000」规则(即等于50、等于1000时按100的倍数取整),可以调整判断条件为:
=IF(T2<50, ROUND(T2/5,0)*5, IF(AND(T2>50,T2<1000), ROUND(T2,-1), ROUND(T2,-2)))
内容的提问来源于stack exchange,提问作者c0mm4nd3rcool13
相关产品推荐
相关产品推荐

