作者hnjm8596 (DaDiDaLaDo)
看板Office
標題[算表] IF數值判斷錯誤
時間Thu May 26 19:17:56 2022
軟體: Excel
版本:365
利用IF進行數值的判斷,數值比較大的到時候就會顯示錯誤,如同下面兩張圖。
當利用500.1-500 會顯示Fail但是利用200.1-200時又會顯示pass,請問要怎麼解決這個問題
呢?
https://i.imgur.com/Zjze3vs.jpg
https://i.imgur.com/bO98htR.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.26.229.250 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1653563878.A.C59.html
1F:→ kinomon: B1的500.10是否為顯示進位後的結果? 05/26 19:52
2F:→ kinomon: 或A1是否為顯示捨去後的結果 即C1真的是0.1嗎? 05/26 19:54
3F:→ hnjm8596: k大 因為500和500.1是自己手動輸入上去的,所以應該不 05/26 19:58
4F:→ hnjm8596: 是顯示進位的問題。 05/26 19:58
5F:→ kinomon: 噢 是<=的關係 05/26 20:38
6F:→ kinomon: 不對 我搞錯 05/26 20:40
7F:→ kinomon: 應該是excel計算精度的關係 05/26 20:42
8F:→ kinomon: 你可以用round函數捨去浮點數 05/26 20:46
9F:→ newacc: 猜浮點誤差,用ROUND試試看 05/26 21:20
10F:→ suaveness: 同上,這是 Numeric precision 的問題,某種程度上算是 05/26 21:20
11F:→ suaveness: Excel 的一個 bug,請用 round 處理掉 05/26 21:21
12F:→ suaveness: 你可以用評估公式,應該會看到兩個值實際上都不是 0.1 05/26 21:23
13F:推 mddc62: 不只是excel 很多資料庫都有類似問題 05/26 23:34
14F:→ suaveness: 畢竟是國際標準,基本上都會有這個問題 05/27 00:03
15F:→ hnjm8596: 了解,感謝以上各位的回答! 05/27 06:35
16F:→ hnjm8596: 自己回答一下,利用各位的回答當作關鍵字找到了微軟自 05/27 12:44
17F:→ hnjm8596: 己提出的兩個解決方法,一個是Round,一個是調整活頁簿 05/27 12:44