作者A1pha ([αλφα])
看板Office
標題[算表] 運算出一樣的結果但是邏輯判斷卻不一樣?
時間Sun May 10 11:46:03 2009
軟體:
微軟Excel 2003
版本:
Excel 2003
奇怪了,
我在做時間的運算,就是時間上的加減。
然後用一個IF去判斷,假使小於10分鐘出現A值,否則出現B值。
但是奇怪的事情發生了==
有個BUG,於是我去分開檢視結果如下:
S7=G7-J7 =09:00-08:50 =00:10
R7=IF(G7-J7<$B$1,TRUE,FALSE) =IF(G7-J7<00:10,TRUE,FALSE) =TRUE.....怪怪的
但是另一個:
S15=G15-J15 =05:00-04:50 =00:10 (運算出來一樣是00:10)
R15=IF(G15-J15<$B$1,TRUE,FALSE) =IF(G15-J15<00:10,TRUE,FALSE)= False 對的!
然後再來:
=S15-S7=00:00
=S7-S15=############
=IF(S7=S15,TRUE,FALSE) = False.....................無言了
00:10 <> 00:10 .......囧
格式都是 hh:mm...
這是什麼毛病啊?<囧>
--
與其去懊悔做不到的事,
倒不如去做能做的事。
就算它和結果無關,
還是能夠往前邁進。
http://www.wretch.cc/blog/AlphaWing/24383501
From xxxHoLic vol.9
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 124.9.136.248
※ 編輯: A1pha 來自: 124.9.136.248 (05/10 11:47)
※ 編輯: A1pha 來自: 124.9.136.248 (05/10 12:20)
推 JieJuen:循環小數計算會出誤差 看評估值公式可知 05/10 15:25
→ A1pha:那個要怎麼看呀? 為什麼有些是正確的有些是不正確的呀? 05/10 17:21
→ A1pha:評估值我會看了@@ 但是要怎麼修正這個問題呢?QQ 05/10 17:31
→ A1pha:該不會是要在所有的判斷式那邊都要加Round吧...囧 05/10 17:37
→ A1pha:有沒有辦法可以直接設定浮點數的精度呀@@" 太精反而很困擾>< 05/10 17:44
推 JieJuen:算式不要相減試試 =J7+$B$1<G7 05/10 23:50