excel表格怎么算全年休假天数? Excel公式快速计算2024假期天数的技巧
秋叶 Excel
2024 年要上几天班?这个打工人都想知道的问题,微博热搜「贴心」的给出了答案 ——251 天(比去年还多 2 天)。
他也没说这天数是怎么算出来的,不过我倒是知道,Excel 也能轻松计算应出勤天数!一起来看看吧~
元旦:1月1日放假,与周末连休。
春节:2月10日至17日放假调休,共8天。2月4日(星期日)、2月18日(星期日)上班。
清明节:4月4日至6日放假调休,共3天。4月7日(星期日)上班。
劳动节:5月1日至5日放假调休,共5天。4月28日(星期日)、5月11日(星期六)上班。
端午节:6月10日放假,与周末连休。
中秋节:9月15日至17日放假调休,共3天。9月14日(星期六)上班。
国庆节:10月1日至7日放假调休,共7天。9月29日(星期日)、10月12日(星期六)上班。
1、周六周日双休
想要计算 2024 年的应出勤天数,有一个非常简单的公式:
应出勤天数 = 工作日-法定节假日 + 调休
如何计算除法定节假日外的工作日天数?
可以用 NETWORKDAYS 函数。
注意:NETWORKDAYS 函数是将周一到周五当做工作日,周六和周日休假,如果你所在的公司是单休或其他休假方式,请使用 NETWORKDAYS.INTL 函数(下滑至 02 部分查看公式)。
如下图:
B2 单元格是开始日期,C2 是结束日期,F2:F31 是 2024 年所有的节假日,所以公式是:
=NETWORKDAYS(B2,C2$F$2$F$31)
工作日天数就算出来啦!
接着,我们需要在这个基础上增加调休的天数。
可以使用 COUNTIFS 函数计算。
如下图:
G2:G9 是 2024 年调休日期。需要统计其中满足条件【大于等于开始日期且小于等于结束日期】的单元格数量。
公式如下:
COUNTIFSG2:G9">="&B2,G2:G9"<="&C2
结果为 8。
将两个公式拼接到一起:
=NETWORKDAYS(B2,C2$F$2$F$31)+COUNTIFSG2:G9">="&B2,G2:G9"<="&C2
应出勤天数就算出来了,一共是 251 天:
以后遇到需要类似的情况,公式可以直接套用,改一下日期范围就行。比如说计算 2024 年 11 月的应出勤天数:
PS.如果是其他年份,还需要修改法定假期和调休日期的数据。
2、单休和其他休假方式
前面说到,如果是单休或其他休假方式,需要用 NETWORKDAYS.INTL,因为该函数的第 3 个参数可以自定义休息日。
语法结构:
=NETWORKDAYS.INTL(start_dateend_date[weekend][holidays])=NETWORKDAY.INTL(开始日期结束日期[休息日参数][需要排除的节假日日期])
至于公式怎么写?
其实还是应出勤天数 = 工作日-法定节假日 + 调休
假如是周日单休:
公式如下:
=NETWORKDAYS.INTL(B2C2,11$F$2$F$31)+COUNTIFS$G$2$G$9">="&B2$G$2$G$9"<="&C2
只是将 NETWORKDAYS 换成 NETWORKDAY.INTL,第 3 参数选择 11(仅星期日)。
同样的,如果你是其他时候双休或单休,选择对应的参数就行。
hr计算工资薪酬
最头疼的,估计应该是薪酬HR们了,很多时候要计算指定时间段的应出勤天数,还必须要考虑这些假期和调休,该怎么算呢?
因为每年的公休都不固定,微软看了也是蒙圈,所以咱们首先要把公休日期和调休日期做一个对照表。
如下图所示,F列是放假时间,G列是调休上班时间。
接下来,咱们就可以在C2单元格中写公式,计算出每个月的工作日天数了。
复制
=NETWORKDAYS(A2,B2,$F$2:$F$30)+COUNTIFS($G$2:$G$30,">="&A2,G$2:G$30,"<="&B2)
如果要计算任意两个日期之间的工作日天数,只要修改一下A列和B列的起止日期即可。
公式看起来有点长,其实咱们把他拆分成两部分就容易理解了。
先说这部分: =NETWORKDAYS(A2,B2,F$2:F$30) NETWORKDAYS函数用于计算两个日期之间,去除周末和法定节假日的工作日天数。
用法为: =NETWORKDAYS(开始日期,结束日期,需要排除的法定节假日) 把这个用法套到上面的公式里,A2是开始日期,B2是结束日期,而F$2:F$30单元格区域则是要排除的法定节假日。
刚刚这部分,是没有考虑到调休这种特殊情况的。而计算调休的就是下面这部分公式: COUNTIFS(G$2:G$30,”>=”&A2,G$2:G$30,”<=”&B2) COUNTIFS函数的作用是用来统计符合多个条件的个数。 这里第一组条件是G$2:G$30,”>=”&A2,第二组条件是G$2:G$30,”<=”&B2。
就是以对照表中的调休日期为统计区域,看看这个区域中的日期有多少个大于等于A2的开始日期,并且小于等于B2的结束日期。说白了,就是看看从开始日期到结束日期这个阶段中,有几天是需要调休上班的。
把前面计算出的去掉法定节假日的工作日天数,加上这个要调休上班的天数,就是实际的工作日天数。
怎么样,用 Excel 计算工作日天数的方法
本文来自微信公众号:秋叶 Excel (ID:excel100),作者:竺兰