Board logo

標題: [發問] 計算時數 [打印本頁]

作者: fangsc    時間: 2014-7-10 15:31     標題: 計算時數

請問計算工作時數可以用什麼函數
1. 扣掉周六,周日
2. 扣掉國定假日
3. 考慮上班時間 (8:00 ~ 17:00)

感謝~~
作者: ML089    時間: 2014-7-11 01:20

回復 1# fangsc


中午12:00 - 13:00 不用扣嗎?
作者: fangsc    時間: 2014-7-11 08:43

回復 2# ML089


   不用吔!! 謝謝.:)
作者: Hsieh    時間: 2014-7-11 10:38

回復 3# fangsc

試試看
[attach]18683[/attach]
    [attach]18682[/attach]
作者: fangsc    時間: 2014-7-11 13:37

回復 4# Hsieh

好像有一些問題.
Row#7  5/27~6/4    :  32.0
5/28, 5/29, 5/30, 6/3 共4天整 (32小時) + 5/27 15:50 (一小時又十分鐘) + 6/4 13:46  (五小時又46分鐘) = 38小時又56分鐘
因為還沒看懂公式,所以還是要請教您....
作者: Hsieh    時間: 2014-7-11 16:08

本帖最後由 Hsieh 於 2014-7-11 16:11 編輯

回復 5# fangsc
[attach]18687[/attach]
定義名稱"min"為總分鐘數
=(MAX($D7,2)-2)*480+IF($D7=1,(MIN($C7,INT($B7)+$E$5)-MAX($B7,INT($B7)+$E$4))*1440,(MIN($C7,INT($B7)+$E$5)-MAX($B7,INT($B7)+$E$4))*1440+(MIN($C7,INT($C7)+$E$5)-MAX($B7,INT($C7)+$E$4))*1440)

計算完整工作日總分鐘數
(MAX($D7,2)-2)*480

求出實際完成時間
MIN($C7,INT($B7)+$E$5)

求出實際收件時間
MAX($B7,INT($B7)+$E$4)
所以當工作天數是1時,就直接使用完成時間-收件時間
工作天數超過1天   
那麼頭尾2個工作天的分鐘數
(MIN($C7,INT($B7)+$E$5)-MAX($B7,INT($B7)+$E$4))*1440+(MIN($C7,INT($C7)+$E$5)-MAX($B7,INT($C7)+$E$4))*1440
                                 首日日數                                                                                                        尾日日數
[attach]18686[/attach]
作者: ML089    時間: 2014-7-11 21:18

本帖最後由 ML089 於 2014-7-11 21:48 編輯

回復 5# fangsc
   
> Row#7  5/27~6/4    :  32.0
> 5/28, 5/29, 5/30, 6/3 共4天整 (32小時) + 5/27 15:50 (一小時又十分鐘) + 6/4 13:46  (五小時又46分鐘) = 38小時又56分鐘
> 因為還沒看懂公式,所以還是要請教您....

說明有誤,題目為一天工作時段為 8:00~17:00 合計每天為9小時

所以應修正為
5/28, 5/29, 5/30, 6/3 共4天整 (36小時) + 5/27 15:50 (一小時又十分鐘) + 6/4 13:46  (五小時又46分鐘) = 42小時又56分鐘
作者: ML089    時間: 2014-7-11 21:45

回復 1# fangsc
[attach]18688[/attach]

考慮
1. 扣掉周六,周日
2. 扣掉國定假日
3. 考慮上班時間 (8:00 ~ 17:00),一天工作時數為 9小時

E7 =(MIN(17,MAX(8,MOD(C7,1)*24))-MAX(8,MIN(17,MOD(B7,1)*24))+(D7-1)*9)/24
儲存格格式 [h]"小""時"mm"分"

F7 =MIN(17,MAX(8,MOD(C7,1)*24))-MAX(8,MIN(17,MOD(B7,1)*24))+(D7-1)*9
儲存格格式: 0.00"小""時"
作者: fangsc    時間: 2014-7-14 11:21

不好意思,我的訊息有錯誤.
很感謝2位版主的幫忙與解說.
作者: ML089    時間: 2014-7-14 15:43

回復 9# fangsc

=MIN(17,MAX(8,MOD(C7,1)*24))-MAX(8,MIN(17,MOD(B7,1)*24))+(D7-1)*9

8樓公式中 8、17 是指 8:00、17:00 的時間, * 9 表示一天的工作時間,這些參數可以依照你的需求修改
作者: ML089    時間: 2014-11-4 17:00

回復 9# fangsc

前面的公式有誤作廢

時間應該要明確定義,計時時段為 8:00~12:00、13:00~17:00,每日8小時
E7公式
=((MIN(12,MAX(8,MOD(C7,1)*24))-MAX(8,MIN(12,MOD(B7,1)*24))) + (MIN(17,MAX(13,MOD(C7,1)*24))-MAX(13,MIN(17,MOD(B7,1)*24))) + (NETWORKDAYS(B7,C7,I$7:I$28)-1)*8)/24




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)