截止目前(2023年11月28日)暂时没有一个公式在Excel里实现这个,可以通过多个公式拼凑在一起,可以解决。常见的是保留两位小数,下面一两位小数为例。
可以用6、7种公式拼接起来,可以达到效果。
公式1 查找
=MID(A2,(LEN(INT(A2))+1+3),1)
这个公式是找到小数点第三位,用来判断是否是5(公式里加1是把小数点算上长度了)
=MID(A2,(LEN(INT(A2))+1+2),1)
这个公式是找到小数点第二位。
公式2 用求余公式 判断是否是偶数
=MOD((INT(MID(A2,(LEN(INT(A2))+1+2),1))),2)
这个公式是判断小数点第二位是否是偶数,余数是0就是偶数。
公式3、4、5 向下舍去 和 向上进位 和 四舍五入
=ROUNDDOWN(A2,2)
=ROUNDUP(A2,2)
=ROUND(A2,2)
这里的2是保留两位小数的意思。
公式6 转化异常
=IFERROR(INT(A2),A2&"不是数字?")
公式7 条件判断,和多重判断套用
=IF(MID(A2,(LEN(INT(A2))+1+3),1)="5",IF(MOD((INT(MID(A2,(LEN(INT(A2))+1+2),1))),2)=0,ROUNDDOWN(A2,2),ROUNDUP(A2,2)),ROUND(A2,2))
最终拼接结果是
=IFERROR(IF(MID(A2,(LEN(INT(A2))+1+3),1)="5",IF(MOD((INT(MID(A2,(LEN(INT(A2))+1+2),1))),2)=0,ROUNDDOWN(A2,2),ROUNDUP(A2,2)),ROUND(A2,2)),A2)
以上公式我都用表格跑了一遍,应该没有出错的
