为什么Excel 2013向上舍入导致单元格?

时间:2017-10-12 15:39:04

标签: excel

I Create a new Excel 2013 file
I select the three first cells in column A
I select format cell
I choose Number
I check Use thousand separator
I choose 0 decimal
I enter in A1 the number 961748947
I enter in A2 the number 961748941
I enter in A3 = A1 * A2

Excel displays in A3 the value of 924 961 031 285 115 000
instead of                        924 961 031 285 115 127

为什么Excel 2013会对价值进行四舍五入? 如何获得确切的结果?

1 个答案:

答案 0 :(得分:1)

正如@tigeravatar所说,Excel只有15位精度。但是从post #10开始,您可以使用自定义函数:

Function Times(ParamArray v())

    Dim j As Long
    Times = CDec(1)

    For j = 0 To UBound(v)
        Times = Times * v(j)
    Next j

    If WorksheetFunction.Log10(Times) > 15 Then
        Times = FormatNumber(Times, , , vbTrue)
    End If

End Function

这样你就可以获得正确的结果。