ms access:简单的减法,错误的答案

时间:2019-10-28 04:12:18

标签: vba ms-access

181.72-181.00 = 0.719999999999999

为什么Access会这样做?如何获得0.72的正确答案

1 个答案:

答案 0 :(得分:0)

始终将 Currency 用作数据类型(也用于表字段),用于不超过四位小数的数量和数量:

Result = CCur(181.72) - CCur(181.00)
Result -> 0.72

要获取更多小数,请使用十进制

Result = CDec(181.59898) - CDec(181.00)
Result -> 0.59898

要在查询中使用,CDec将失败,因此编写一个函数来调用它:

Public Function CVDec(ByVal Value As Variant) As Variant

    Dim Result As Variant

    Result = CDec(Value)

    CVDec = Result

End Function