重複の可能性:
ExcelVBA二重加算エラー
2つの数値の差を計算する非常に単純なVBAマクロがExcelにあります。0.7と0.65の差を計算しようとすると、4.99999999999999E-02が返されます。なんで?
これが私の関数です:
Public Function Diff(x As Double, y As Double) As Double
Diff = x - y
Debug.Print Diff
End Function
[即時]ウィンドウに表示されるものは次のとおりです。
4.99999999999999E-02
この「バグ」を複製するには、イミディエイトウィンドウに「?0.7-0.65」と入力して、何が返されるかを確認します。