EXCEL 统计工作日上班天数、周末上班天数,请大佬帮忙?

如何按月排班计算工作日上班天数、周末上班天数、节日(双倍)上班天数。(工作日指扣除周末、法定节假日加补班)

是否周末可以用weekday判断,再if判断对应日期单元格是否为“休”就可以sumproduct计算出天数了,但是节假日跟补班各地情况都不一样,这个就得根据实际情况来写公式了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-06-20
给日期行下面加一个标识,判断每个日期是休息日还是工作日,然后按照工作日和休息日的标识进行条件统计。其中休息日中,正常的双休日可以用函数自动确定,法定节假日这个不固定,可以根据政府发布的通知把当年的11天法定日的具体休息日期罗列下来,然后用查询函数查询确定。(每年的四季度,国务院都会发布下一年的的法定假时间安排通知,提前按照通知罗列即可,实际过程中若有调整,再自行更改)
第2个回答  2022-06-21
截图没有行号和列标,且不知日期是否为日期数据(姑且当做日期数据吧),写的公式不一定与实际工作表相符。此外,尚需要把法定假日列表出来。
工作日上班天数:
=COUNT(0/(HLOOKUP(WORKDAY(B$1,COLUMN(A:AA)-1,假日列表),B$1:AF2,ROW(2:2),)<>"休"))
周末及法定假日上班天数:
=COUNT(0/(B2:AF2<>"休"))-工作日上班天数
公式说明:
WORKDAY:计算出B1开始的系列工作日(去除周六、周日和假日列表列出法定假日日期后),可能超出本月,但没关系。
HLOOKUP:根据上面计算的工作日,在B1:AF1中去精确匹配,返回公式所在行的记录(不考虑有空单元格),并判断是否不为“休”(不考虑空单元格,即不为“休”就是上班——不管白班还是夜班),超出本月的日期肯定匹配不到,返回空值。
用0来除这些工作日不为休(TRUE)的结果,得到0,而0除空值出错
再后用COUNT计数,COUNT会忽略错误值,计数(0的个数)的结果就是工作日上班的天数。
所有上班天数,减去工作日上班的天数,就是周末或假日上班的天数。
第3个回答  2022-06-23
我有模板,需要吗?可以直接用的
相似回答