Excel 計算問題

2009-05-31 4:56 am
我用excel計以下算式時點解會咁?
(29.4*7)-int(29.4*7)應該係0.8
但係個小數位推到小數點後14個位時會出"0.799999999999983"
以下那個情況會在output到work時明顯出現!!
更新1:

問題係當我將eccel的運算結果output出出work的合併列印時佢會出 0.799999999999983,咁樣的話你會點丫? 唔係我無果樣攪果樣 同時如果你有留意的話以上的問題只不過你小數位後"2"位的計算 點解會有咁的答案!!

回答 (3)

2009-06-02 4:55 pm
✔ 最佳答案
Excel 內部是用一種二進制浮點數字標準來儲存小數的。
眾所周知,某些十進制的小數,如 13 = 0.33333333... ,是無法用有限的小數位完整無誤地表示或儲存的。
而二進制的小數亦一樣,所以有些小數儲存在 Excel 內會有微細的誤差。
除了儲存時有可能有誤差,進行加減乘除運算時,當中亦有可能會導致誤差。
這情況在顯示很多小數位時才會被發現。

要解決 Excel 內小數的誤差引致 Mail Merge 時的數字顯示問題,你可以更改 Mail Merge 的 Field Code ,設定你要的小數位,或者,你可以選用 DDE 來匯入 Excel 資料,請看以下影像示範:

http://www.youtube.com/watch?v=stBkdDQtAU8&fmt=22


2009-06-02 08:57:16 補充:
註:以上 1/3 的除號不見了。
2009-06-09 8:52 am
明白晒!!多謝你
2009-05-31 8:02 am
所有運算工具都有運算時的誤差即:精確度

以下是Excel的online說明

精確度 是計算精準度的度量。Excel 會以精準度為 15 位數的有效數字進行儲存及計算。不過,您可以變更計算的精準度,這樣 Excel 在重新計算公式時,會使用顯示的值而不是儲存的值。

2009-06-01 00:01:01 補充:
顯示的值而不是儲存的值


收錄日期: 2021-04-24 10:44:57
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20090530000051KK01825

檢視 Wayback Machine 備份