2008年12月9日 星期二

[EXCEL] 今天放假嗎?要補班啦!

 
  之前有一篇文章,「今天放假嗎?」是在討論如何判斷某一天是不是假日,或是某一段時間要上班幾天。但是那篇文章的前提是,週六週日一律算放假

  問題來了,如果週六週日要補上班呢?那就得參考本篇文章中的公式加強版了。

##CONTINUE##
  如上圖,C 欄是原先的公式,單純使用 NETWORKDAYS() 來計算工作天,週六週日一律算放假。
  C2 =NETWORKDAYS(A2,A2,$F$2:$F$10) -1 表示要上班,0 表示放假。
  C11 =NETWORKDAYS(A2,A10,$F$2:$F$10) -A2~A10 這段時間要上 5 天班。

  以此為基礎,如果考慮週六週日要補上班的情況,可以在 G 欄加一個列表,個別列出所有週六日要補上班的日子。然後修改公式
  D2 =NETWORKDAYS(A2,A2,$F$2:$F$10)+SUMPRODUCT(--($G$2:$G$10>=A2),--($G$2:$G$10<=A2))
  D11 =NETWORKDAYS(A2,A10,$F$2:$F$10)+SUMPRODUCT(--($G$2:$G$10>=A2),--($G$2:$G$10<=A10))

  新的公式,主要在計算 A2~A10 這段時間中,是否包含了 G2:G10 列表中的日期?如果有,表示是要補班的日子,得把這些日子再加回去才行。

相關文章:

0 意見: