You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel多日期区间按年份及近365天统计天数需求

Excel日期统计解决方案

一、多行起止日期按年份拆分统计天数

针对C4:D8的多行起止日期区间,按年份拆分计算各年份内的天数,支持跨年度区间、空单元格留空、预估日期处理:

1. 单年份统计公式(以2023年为例)

在目标单元格输入以下公式,自动计算所有行中属于2023年的天数总和:

=SUMPRODUCT(
  --(C4:C8<>""), --(D4:D8<>""),
  MAX(0, MIN(D4:D8, DATE(2023,12,31)) - MAX(C4:C8, DATE(2023,1,1)) + 1)
)
  • 逻辑:对每一行区间,取该区间与目标年份的交集起始(MAX(区间开始, 年份第一天))和交集结束(MIN(区间结束, 年份最后一天)),计算交集天数;--(C4:C8<>"")和--(D4:D8<>"")用于跳过空单元格的行。
  • 其他年份只需修改DATE函数中的年份参数(如2024年改为DATE(2024,12,31)和DATE(2024,1,1))。

2. 预估日期处理

如果D列存在类似「预估2024-06」的文本型预估日期,先将其转换为日期格式(提取年月并转为当月最后一天),嵌套公式处理:

=SUMPRODUCT(
  --(C4:C8<>""), --(D4:D8<>""),
  MAX(0, MIN(IF(ISNUMBER(D4:D8), D4:D8, EOMONTH(DATE(LEFT(D4:D8,4), MID(D4:D8,6,2),1),0)), DATE(2023,12,31)) - MAX(C4:C8, DATE(2023,1,1)) + 1)
)
  • 逻辑:用ISNUMBER判断是否为标准日期,非标准日期则提取年月并转为当月最后一天(EOMONTH函数)。

二、统计「今日回溯365天」范围内的总天数

计算所有区间中落在TODAY()-365到TODAY()之间的天数总和,支持空单元格和跨区间:

=SUMPRODUCT(
  --(C4:C8<>""), --(D4:D8<>""),
  MAX(0, MIN(D4:D8, TODAY()) - MAX(C4:C8, TODAY()-365) + 1)
)
  • 逻辑:对每一行区间,取与回溯区间的交集,计算交集天数后求和;空单元格的行自动被排除。

空单元格单独留空处理

若需公式所在单元格在无有效区间时显示为空,在外层套IF函数:

=IF(SUMPRODUCT(--(C4:C8<>""),--(D4:D8<>"")), 上述统计公式, "")

内容的提问来源于stack exchange,提问作者NancyTigress

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 21:43:19