私はVBAでこのあいまいな丸め問題を抱えています。VBA丸め問題
a = 61048.4599674847
b = 154553063.208822
c = a + b
debug.print c
Result:
154614111.66879
ここで、なぜVBAは変数cを四捨五入しましたか?私は機能を四捨五入しなかった。私が期待していた価値は154614111.6687894847でした。変数cを小数点以下15桁まで四捨五入しても、私はまだ期待通りの結果を得られません。
いずれの説明も理解できます。
編集:
cDecを使用して期待される結果を得ました。
a = cDec(61048.4599674847)
b = cDec(154553063.208822)
c = a + b
?c
154614111.6687894847
することができる変数の異なるタイプ(10進数)に変換しているCDECを行うことにより
[浮動小数点演算は、Excelで不正確な結果を与えることができる(http://support.microsoft .com/kb/78113) – SeanC