返回列表 上一主題 發帖

困擾的 EXCEL ( IF)

本帖最後由 luhpro 於 2014-9-8 23:46 編輯

回復 1# Cyssuc
1. 第二項任何一格等於0 可用 OR(Q2=0,P2=0) 來實現.
2. 只有兩個儲存格間的計算, 似乎不用用到 SUM 函數.

所以可得 :

=IF((Q2-P2)>8,8,IF(OR(Q2=0,P2=0),0,IF(AND(P2<12,Q2>12),Q2-P2-1,Q2-P2)))

TOP

本帖最後由 luhpro 於 2014-9-9 22:21 編輯
回復  luhpro
    8        14.5
答案應該等於14.5-8-1
故等於5.5
問題是 按上方列表計算答案是6.5   所 ...
Cyssuc 發表於 2014-9-9 08:18

咦?
我的電腦算出來是對的耶...


回復  ML089
    我想哭的原因。。。。
Cyssuc 發表於 2014-9-9 17:00

話說表面上看不出來問題點,
是否你可以把 P50 與 Q 50 的公式也秀出來看看.
還有你可以測測看將 P50 與 Q50 兩個儲存格都先刪除值,
再將格式改為 "G/通用格式",
最後分別打上 13 與 17 兩個整數數值覆蓋上去看看是否 O50 的結果會變正常..

TOP

回復 11# Cyssuc
首先, 用來做計算的式子元素,不建議文字而最好是給數值,
建議你採用 =IF(TIME(16,0,0)<G96,17,...而非 =IF(TIME(16,0,0)<G96,"17",...
因為系統將文字自動轉換成數值的動作有可能因為浮點精度而產生誤差.

其次觀察你給的公式 :
Q96的式子 從 18.5 直接跳 17, 13.5 直接跳 12  確實是你想要的結果嗎?
還是打錯了?
若是等距計算可以用 =IF(G96<TIME(8,30,0),0,HOUR(G96)+IF(MINUTE(G96)<30,0.5,1)) 來完成.
若該式無誤則可改用:
=IF(OR(G96>=TIME(18,30,0),G96<TIME(16,30,0)),HOUR(G96)+IF(MINUTE(G96)<30,0.5,1),IF(G96>=TIME(17,20,0),17,16.5))
試試看.

TOP

        靜思自在 : 忘功不忘過,忘怨不忘恩。
返回列表 上一主題