如何计算指定时间段内员工已休假期天数
计算指定日期范围内员工已休假期天数的方法
前提准备
假设你的表格结构如下(对应你提供的表格样式):
- A列:员工姓名
- B列:假期开始日期
- C列:假期结束日期
- 额外设置两个固定单元格作为统计区间的起止,比如
F1为统计起始日期,F2为统计结束日期
核心计算逻辑
要准确算出单条假期与指定区间的重叠天数,只需通过MAX和MIN函数简化场景判断,无需逐一罗列重叠情况:
有效重叠天数 = 最大(0, 最小(假期结束日期, 统计结束日期) - 最大(假期开始日期, 统计起始日期) + 1)
具体操作步骤
- 计算单条假期的有效天数
在空白列(比如D列)的第一个单元格(D2)输入公式:
=MAX(0, MIN(C2, $F$2) - MAX(B2, $F$1) + 1)
按回车后下拉填充至所有行,即可得到每条假期在指定区间内的实际休假天数。
- 统计单个员工的总休假天数
在另一区域(比如G列,G1填写员工姓名)输入SUMIF函数汇总:
=SUMIF(A:A, G1, D:D)
下拉填充后,就能得到每个员工在指定区间内的总已休天数。
注意事项
- 确保所有日期单元格设置为日期格式,避免文本格式导致计算错误。
- 若涉及半天假等特殊情况,可根据实际需求调整公式(比如将结果除以2)。
内容的提问来源于stack exchange,提问作者Paul Stewart
相关产品推荐
相关产品推荐

