2016年9月11日 星期日

Excel-計算一個月不含六日的工作天數(WEEKDAY,SUMPRODUCT)

網友想要在 Excel 工作表中來計算一個月的工作天,其中要計算不含星期日和不含星期六、日的工作天,分別為多少?
如下圖,本例提供二種不同的計算方式。其一:列出該月的每一天;其二:只列出某年某月,即可計算工作天數。
Excel-計算一個月不含六日的工作天數(WEEKDAY,SUMPRODUCT)
【公式設計與解析】
(1) 計算不含星期六日的工作天數(使用日期清單)
儲存格E2:=SUMPRODUCT(1*(WEEKDAY(A2:A32,2)<6 p="">
其中 WEEKDAY 函數的參數『2』,表示以 1 ~ 7 表示星期一至星期日。參數『<6 p="">
Excel-計算一個月不含六日的工作天數(WEEKDAY,SUMPRODUCT)

(2) 計算不含星期日的工作天數(使用日期清單)
儲存格E4:=SUMPRODUCT(1*(WEEKDAY(A2:A32,2)<7 p="">
其中 WEEKDAY 函數的參數『2』,表示以 1 ~ 7 表示星期一至星期日。參數『<7 p="">

(3) 計算不含星期六日的工作天數(不使用日期清單)
儲存格G7:=SUMPRODUCT(1*(WEEKDAY(ROW(INDIRECT(DATE(G3,G5,1)
& ":" & DATE(G3,G5+1,0))),2)<6 p="">
DATE(G3,G5,1):取得本月的第一天之數值。
DATE(G3,G5+1,0):取得本月的最後一天之數值。
INDIRECT(DATE(G3,G5,1) & ":" & DATE(G3,G5+1,0)):使用 INDIRECT 函數將數值轉換為真實位址表示法。本例2016年5月,傳回結果:42491:42521。
ROW(INDIRECT(DATE(G3,G5,1) & ":" & DATE(G3,G5+1,0))):本例2016年5月,傳回結果:ROW(42491:42521)。

(4) 計算不含星期日的工作天數(不使用日期清單)
儲存格G9:=SUMPRODUCT(1*(WEEKDAY(ROW(INDIRECT(DATE(G3,G5,1)
& ":" & DATE(G3,G5+1,0))),2)<7 p="">
如第(3)式之說明。

沒有留言:

張貼留言

好康東東