【发布时间】:2011-09-07 08:06:44
【问题描述】:
我在 VBA 中有这个模糊的舍入问题。
a = 61048.4599674847
b = 154553063.208822
c = a + b
debug.print c
Result:
154614111.66879
问题来了,为什么 VBA 对变量 c 进行四舍五入?我没有发布任何四舍五入功能。我期望的值是 154614111.6687894847。即使我将变量 c 四舍五入或格式化为小数点后 15 位,我仍然没有得到预期的结果。
任何解释将不胜感激。
编辑:
使用 cDec 获得了预期的结果。我在 Jonathan Allen 在Why does CLng produce different results?的回复中读到了这一点
这是测试结果:
a = cDec(61048.4599674847)
b = cDec(154553063.208822)
c = a + b
?c
154614111.6687894847
【问题讨论】: