在VBA中我有这个不明显的舍入问题。VBA舍入问题
a = 61048.4599674847
b = 154553063.208822
c = a + b
debug.print c
Result:
154614111.66879
这是一个问题,为什么VBA会舍弃变量c?我没有发布任何四舍五入功能。我期待的价值是154614111.6687894847。即使我将变量c舍入或格式化为小数点后15位,我仍然没有得到预期的结果。
任何解释将不胜感激。
编辑:
使用cDec获得预期结果。我在乔纳森·艾伦的答复中Why does CLng produce different results?
阅读下面是结果的测试:
a = cDec(61048.4599674847)
b = cDec(154553063.208822)
c = a + b
?c
154614111.6687894847
[浮点运算可能会不准确的结果在Excel(http://support.microsoft .com/kb/78113) – SeanC