2017-10-12 2 views
0
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は値を切り上げますか? 正確な結果を得るには?Excel 2013の結果がセルになるのはなぜですか?

+1

Excelの精度は15桁です。あなたの数字は15桁を超えているため、Excelは最初の15桁を正しく計算することができます。大きな数字で作業している場合は、おそらく別のプログラムや電卓が必要です。 – tigeravatar

答えて

1

@tigeravatarによると、Excelの精度は15桁までです。あなたは正しい結果を持つことができます

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 

この方法:しかし、このpost #10から、カスタム関数を使用することができます。

関連する問題