分享

如何计算两个日期间星期日的天数?

 恶猪王520 2017-08-10

更多Excel/Word/PPT一分钟动画教程

请点左下角的“阅读原文”


在Excel中,如何计算两个日期间星期日的天数


在统计员工上班天数时,有些特殊岗位不是按照5天工作制上班,而是连续上班制,并且星期日上班会给一定的补助。如图 191‑1所示为某企业员工上班统计表,如何统计员工上班期间内的星期日的天数?

191‑1上班统计表


→ 解决方案:

使用NETWORKDAYS.INTL函数统计两个日期间星期日的天数。


→ 操作方法

选择E3:E10单元格区域,输入下列2个公式之一,按组合键结束。

公式1 =NETWORKDAYS.INTL(C3,D3,'1111110')

公式2 =SUMPRODUCT(N(MOD(ROW(INDIRECT(C3&':'&D3)),7)=1))


→ 原理分析

计算某时段内星期几的天数

1.公式1利用NETWORKDAYS.INTL函数的weekend参数支持字符串的特性,将其设置为'1111110',即指定星期一至星期六为周末,只有星期日作为工作日,然后统计CD列日期间的工作日数,即得出员工上班期间内的星期日的天数。

2.公式2利用日期为数值的特性,使用INDIRECT函数和文本合并的方法,将其转换为行区域引用,例如C3&':'&D3的值为'40228:40244'。再使用ROW函数返回该区域的行号数组,并使用MOD函数判断星期几的方法判断周日(余数为1),使用N函数将逻辑值转换为数值后求和,得出两个日期间周日天数。

由于NETWORKDAYS.INTL函数为Excel 2010版新增函数,在20072003版中,需使用公式2计算。


→ 知识扩展

如果需要统计两个日期间任何一个星期几的天数,可以改变weekend参数中0的位置,例如采用如下公式:

星期一:=NETWORKDAYS.INTL(C3,D3,'0111111')

星期二:=NETWORKDAYS.INTL(C3,D3,'1011111')

在早期版本Excel中,也可以使用公式2的方法计算任意星期几的天数:

星期n =SUMPRODUCT(N(MOD(ROW(INDIRECT(起始日期&':'&终止日期))-2,7)+1=n))


版权所有 转载须经Excel技巧网许可


【 Excel 】:在单元格中制作用来填空的下划线~


22万粉丝共同关注

多Excel/Word/PPT一分钟动画教程

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多