例如,我有以下价值:
0.000018
这是小数点后6位,但是我想将它四舍五入到最接近的整数小数位,这样:
0.000018 -> 0.0001
我玩过round()函数但是如果我只使用round函数:
round(0.000018,4) = 0.0000
出于财务目的处理小数时,在这种情况下,需要向客户收取费用,而不是向他们收取免费赠品!但round()
会根据价值上下波动,我需要不断向上舍入。
有一种简单的方法吗?
答案 0 :(得分:29)
您可以使用ceil (ceiling)。它只会向上舍入,所以你必须乘以10000,然后再进行细胞再分割结果。
所以ceil(0.000145* 10000) = ceil(1.45) = 2
分回来,你将0.0002
FLOOR
显然但工作是一样的:D
手册也在同一页面上:)
所以floor(0.000145* 10000) = floor(1.45) = 1
分回来,你将0.0001
答案 1 :(得分:2)
使用ROUND(X,D)
,将值X舍入到D小数位。
答案 2 :(得分:2)
还有另一种方法,即添加10的倍数。例如:round(x+0.005, 2)
其中x为0.923 = 0.93,这会减少最大浮点除法误差。