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

Excel查找指定日期后首个≤目标值的对应日期问题

实现方法

当然可以实现这个需求!下面是具体的Excel公式和思路解析:

核心公式

直接在F1单元格输入以下公式即可:

=INDEX(A:A,AGGREGATE(15,6,ROW(B:B)/(ROW(B:B)>MATCH(C1,A:A,0)*(B:B<=D1)),1))

如果需要处理没有匹配结果的情况(比如C1行之后没有≤D1的数值),可以用IFERROR包裹公式,返回自定义提示:

=IFERROR(INDEX(A:A,AGGREGATE(15,6,ROW(B:B)/(ROW(B:B)>MATCH(C1,A:A,0)*(B:B<=D1)),1)),"无匹配结果")

公式逻辑拆解

我们一步步理清这个公式的工作原理:

  • MATCH(C1,A:A,0):精确查找C1中的日期在A列对应的行号,确定向下搜索的起始位置(从该行的下一行开始)
  • ROW(B:B)>MATCH(C1,A:A,0):筛选出A列中C1日期所在行之后的所有行
  • B:B<=D1:筛选出B列数值小于等于D1的行
  • ROW(B:B)/(...):同时满足上述两个条件的行号会被保留,不符合条件的行则返回错误值(后续会被忽略)
  • AGGREGATE(15,6,...,1):调用SMALL函数(参数15代表SMALL)并忽略所有错误值(参数6代表忽略错误),取出第一个最小的符合条件的行号——也就是从C1行之后向下找到的首个匹配行
  • INDEX(A:A,...):根据找到的行号,返回对应A列的日期

示例验证

按照你提供的示例数据,这个公式会准确定位到C1日期行之后首个B列数值≤D1的行,并返回该行的A列日期(即19/11/1999)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 18:55:15