English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

小弟因有一個排程工作表的需求在排定時間計算時遇到一個如下問題,假設一個日期在A1:2006/10/2 08:00:00 AM,今天A工作要花費4個小時經過計算後是:
B1:=A1+(4*60)/(24*60) 一天24小時
則等於 2006/10/2 12:00:00 PM ,這是以24小時來進行計算.(答案正確)
但是如果今天的班是二班制8:00AM~16:00PM 16:00PM~12:00AM
則我如果公式改為
B1:=A1+(4*60)/(16*60) 一天可工作時間只有16小時
則跑出來的答案為:2006/10/2 2:00:00 PM
居然多了二個小時,請各位高手教教我吧

2006-10-04 19:38:16 · 3 個解答 · 發問者 JILL 1 in 電腦與網際網路 軟體

3 個解答

4小時一班就完工,第二班要作什麼,那答案你想要什麼?

2006-10-11 09:24:57 補充:
   A           B          C1  工作起始時      工作結束時      須費工(時)22006/10/2 08:00:00 AM 2006/10/2 12:00:00 PM . 432006/10/2 12:00:00 PM 2006/10/3  09:00:00 AM  13B2=IF((HOUR(A2+C2/24)>0)*(HOUR(A2+C2/24)<8),(A2+C2/24)+"08:00",A2+C2/24)A3=IF(B2="","",B2)公式說明:如果A2+C2/24大於0且小於8則所得加8小時;(+"08:00")否則=A2+C2/24如須扣除假日;假日輸入於D欄則公式:B2=IF(HOUR(A2+(SMALL(IF(COUNTIF(D:D,INT(A2+ROW($A$1:$A$500)/24)),"",ROW($A$1:$A$500)),C2))/24)<8,A2+(SMALL(IF(COUNTIF(D:D,INT(A2+(ROW($A$1:$A$500)/24)-"00:01")),"",ROW($A$1:$A$500)),C2))/24+"08:00",A2+(SMALL(IF(COUNTIF(D:D,INT(A2+(ROW($A$1:$A$500)/24)-"00:01")),"",ROW($A$1:$A$500)),C2))/24)陣列公式;結束公式須按Ctrl+Shift+Enter

2006-10-11 05:24:57 · answer #1 · answered by 顯栓 7 · 0 0

這應只用加法就可以了吧!
A1:2006/10/2 16:00:00 AM
A2: 4:00
A3=A1+A2 ==>2006/10/2 20:00
這是不是你要的

2006-10-05 11:50:59 · answer #2 · answered by 中途車 5 · 0 0

邏輯出錯了。
第一個公式直接寫成
=A1+4/24
就可以了,因為兩個60直接約分掉了。
把數值直接除以24再加上日期序數,當然答案會是正確的。
但第二個公式,你的公式約分後,變成
=A1+4/16
一天只有16小時,和日期序數的單位不同,相加結果當然會錯誤。
就算你是用兩班制,日期序數的一天仍是24小時。你所需要設定的公式,恐怕應是當時間超過第一班時,是否要換成第二班吧?

2006-10-04 21:20:36 · answer #3 · answered by Elvin 6 · 0 0

fedest.com, questions and answers