Excel浮點計算誤差,對計算結果會有一定的影響,這個在日常的計算中一定要注意,如果是正常的數值運算,基本上不會出現錯誤了:
例如:
0.82-0.8=0.02
但是如果在外面套上函數就會出現問題:
=INT((B2-A2)*100)
應該得到的結果是2,但是Excel給出的結果卻是1,我們通過查看函數計算過程發現,兩個小數相減,得到的結果不是0.02,而是0.0199999999999999這樣一個值,這就是Excel浮點計算的誤差,我們做了一個簡單的測試,發現絕大多數的數值運算函數,都會受這個誤差的影響,導緻計算結果出現錯誤。
有趣的是這個影響的數值範圍:
各種帶8的或者1.2-1.1,又不是所有的差值在0.1的都會顯示0.999999999999999,規律很難找出來。
我試了幾個這種
1.882-1.8
2.8882-2.88
這樣的都會出現浮點誤差。
出現誤差怎麼辦?微軟提示兩個辦法:
- ROUND函數來确定精度:
為了防止這個誤差,嵌套一個ROUND函數來截斷數據
- Excel選項中規定計算精度:
高級選項卡下面的計算工作簿,勾選計算精度為顯示精度。
在保存工作簿時,除兩個小數位數之外的所有精度都将丢失。 此選項影響活動工作簿,包括所有工作表。 您無法撤消此選項并恢複丢失的數據。 建議您在啟用此選項之前保存工作簿。
這是微軟的原話,我覺得這個誤差多是出現在絕對值小于0的小數運算,那麼很多時候是在計算各種百分比時會出現誤差,尤其是在績效核算時的打分計算中,多扣分了同事不高興,少扣錢了老闆不滿意。一定要多加小心,認真驗算。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!