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

如何用Excel判断日期是否属于多个日期范围(申根区停留统计)

申根区180天滚动停留统计自动实现方案

一、设置停留记录辅助表

  • 新建工作表并命名为「停留记录」,A列输入停留起始日期(从A2开始),B列输入停留结束日期(从B2开始),支持无限新增行记录任意数量的停留区间。

二、主表自动标记停留日期

假设主表A列是需要统计的完整日期序列(从A2开始),在B2单元格输入以下公式,下拉填充即可自动标记当日是否在停留期(1=停留,0=未停留):

=IF(SUMPRODUCT(--(停留记录!$A$2:$A$1000<=A2),--(停留记录!$B$2:$B$1000>=A2))>0,1,0)
  • 公式说明:SUMPRODUCT遍历所有停留区间,判断当前日期是否落在任意一个区间内,只要有一个区间匹配就返回1;--用于将布尔判断结果转换为数字(True=1,False=0)。
  • 若使用Excel 365/2021,可通过动态数组函数一次性生成所有标记(无需下拉):
=BYROW(A2:A1000,LAMBDA(date,IF(SUM(--(停留记录!A2:A1000<=date),--(停留记录!B2:B1000>=date))>0,1,0)))

三、180天滚动窗口累计停留计算

  • 滚动窗口起始日期(主表C列):在C2输入=A2-179,下拉填充,得到当前日期往前推179天的日期(即180天周期的起始点)。
  • 累计停留天数(主表D列):在D2输入以下公式,下拉填充即可自动计算180天内的累计停留天数:
=SUMIFS(B:B,A:A,">="&C2,A:A,"<="&A2)

注意事项

  • 确保「停留记录」和主表的日期格式一致,避免因格式不匹配导致判断失效。
  • 可给「停留记录」的A、B列设置日期型数据验证,防止输入非日期内容。
  • 公式中的1000可根据实际需要调整为更大的行数,覆盖所有可能的停留记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 12:50:25