Excel统计两日期间各星期天数公式跳过月初首日问题求助
问题根因
原公式的计算逻辑未包含起始日期本身的匹配判断,当起始日期恰好等于待统计的星期几时,就会漏算1天,你遇到的2021年10月1日(周五)漏算就是该原因导致。
修复方案一(兼容全Excel版本,仅修改原公式)
把原公式中起始日期参数减1即可,修正后公式如下:
=ABS(INT((N($B$5)-L10)/7)-INT((N($B$4-1)-L10)/7))
代入你给出的测试用例验证,周五的统计结果会从4天修正为5天,和实际预期完全一致。
修复方案二(Excel 2010及以上版本推荐,逻辑更直观)
可以使用NETWORKDAYS.INTL函数直接统计指定星期几的天数,无需额外辅助列存储星期基准值,第三位参数为7位字符串,按顺序对应周一到周日,填0代表统计该星期几,填1代表排除该星期几:
- 统计周一:
=NETWORKDAYS.INTL($B$4,$B$5,"0111111") - 统计周二:
=NETWORKDAYS.INTL($B$4,$B$5,"1011111") - 统计周三:
=NETWORKDAYS.INTL($B$4,$B$5,"1101111") - 统计周四:
=NETWORKDAYS.INTL($B$4,$B$5,"1110111") - 统计周五:
=NETWORKDAYS.INTL($B$4,$B$5,"1111011") - 统计周六:
=NETWORKDAYS.INTL($B$4,$B$5,"1111101") - 统计周日:
=NETWORKDAYS.INTL($B$4,$B$5,"1111110")
内容的提问来源于stack exchange,提问作者Raj
相关产品推荐
相关产品推荐

