Excel公式需求:计算指定时间段内的出行天数
Excel跨时间段出行天数精准统计方案
核心思路
要解决时间段落在出行中途时的精度问题,关键是逐个计算每条出行记录与目标时间段的重叠天数再求和。SUMIFS无法处理部分重叠场景,而通过MAX和MIN函数锁定重叠区间的起止点,就能精准算出每段的有效天数。
公式实现
假设你的出行记录表格结构如下:
- A列:出行开始日期(数据行从A2开始)
- B列:出行结束日期(数据行从B2开始)
- D1:目标时间段的开始日期
- D2:目标时间段的结束日期
使用以下公式计算总出行天数:
=SUM(MAX(0, MIN(B2:B100, D2) - MAX(A2:A100, D1) + 1))
注:Excel 2019及更早版本输入公式后需按
Ctrl+Shift+Enter作为数组公式执行;Excel 365/2021及以上版本直接回车即可。
公式拆解
MAX(A2:A100, D1):获取每条出行记录与目标时间段的实际重叠起始点(取两者中较晚的日期)MIN(B2:B100, D2):获取每条出行记录与目标时间段的实际重叠结束点(取两者中较早的日期)MIN(...) - MAX(...) + 1:计算单条出行的重叠天数(+1是因为要包含首尾日期)MAX(0, ...):过滤掉无重叠的记录(避免出现负数天数)SUM(...):将所有有效重叠天数求和,得到最终结果
验证示例
针对你提到的场景:目标时间段为2020年5月29日至2021年5月19日,三段出行的重叠天数通过该公式计算后,会准确返回157天,解决SUMIFS的精度问题。
内容的提问来源于stack exchange,提问作者Nikhil Jain
相关产品推荐
相关产品推荐

