Round函数

编辑
文档创建者:印然 (67260 )     浏览次数:2689次     编辑次数:4次     最近更新:jiangsr 于 2018-07-25     

目录:

1. 描述编辑

在制作报表时,某数据列如收入金额是数字类型,其中数据包含小数,且小数位数不超过2位,对该列进行求和(使用公式sum)等处理时,会发现最终的结果如:123456.409999996,即小数位数超过2位。
此时您可能会有疑问,为什么小数位数不是2位?若您的报表对有效位数比较敏感,如金额汇总,总金额最多精确到分,即小数位数最多2位,该怎么办?
下面我们就看下其问题出现的原因和处理的方案。

2. 问题原因编辑

众所周知,计算机中的所有数据都是以二进制精确表示的,浮点数也不例外。然而浮点数的二进制表示法,却不像定点数那么简单。因为有些数据,在用十进制计算时就无法精确表示,再从十进制转化为二进制时,二进制无法在有限的精度内完全精确的表示出该数,只能利用更大的精度来更精确的表示这个数,二进制运算后,如上面的求和情况,就是体现出了这个现象,精度变大了。

3. 解决方案编辑

此情况时,可使用round()函数对计算后的结果按指定位数四舍五入来解决。

4. 示例编辑

如下所示,报表中的收入列求和,设计如下:
222

如上对收入sum求和(B4单元格)后精度变大了。遇到这样的情况时,可使用round函数对求和结果按2位小数位四舍五入,即B5单元格中的使用方法。

附件列表


主题: 专题总结
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

此页面有帮助吗? [ 去社区提问 ]