我希望在小数点后大于5时将Excel中的值四舍五入。
例如:
如果num = 9.15 ,结果= 9.1
如果num = 9.16 ,则结果= 9.2
答案 0 :(得分:2)
虽然您的需求与当前有效的舍入规则相矛盾,但可以通过以下公式实现:
=TRUNC($A1*10^1+0.4*SIGN($A1))/10^1
A1
中的值可以是任何长度的任何十进制值,无论是正数还是负数。这将是"四舍五入"到小数点后1位。公式中的10^1
部分会导致舍入到小数点后1位。使用10^2
舍入到2位小数,依此类推。
答案 1 :(得分:1)
对于小数点后两位,我打算发布
=IF(AND(FIND(".",A2&".")=(LEN(A2)-2),RIGHT(A2)="5"),--LEFT(A2,LEN(A2)-1),ROUND(A2,1))
(根据@Jasen的评论修改)
一种非常简单的方法是
=ROUND(A4-10^-10*SIGN(A4),1)
如果将小数位数更改为舍入(如果数字太大则会因舍入错误而失败),应该可以精确到几位小数。
这也可以在很多数字上得到很好的结果: -
=ROUND(A2-A2/10^12,1)
要概括第一个,你可以尝试
=IF(ISNUMBER(FIND(".",A2)),IF(RIGHT(A2)="5",--LEFT(A2,LEN(A2)-1),ROUND(A2,LEN(A2)-FIND(".",A2)-1)),A2)
如果它是5,则向下舍入最后一个小数位。
答案 2 :(得分:0)
这应该做到
=ceil(A1*10-0.5)/10