Google Sheets:如何返回日期列中第二近日期对应的行值?
Google Sheets 获取第二近日期对应值的公式
需求说明
给定A列为日期数据(示例:1/1/2022、1/8/2022、1/15/2022、1/22/2022),需要返回第二近日期对应的指定列(如B列、C列)的值,示例中期望返回41(对应1/15/2022的关联值),且公式需支持适配不同数据列。
核心公式
要获取A列第二近日期对应的C列值,可使用以下公式:
=XLOOKUP(LARGE(A:A,2),A:A,C:C)
公式解释
LARGE(A:A,2):从A列的所有日期中提取第二大的日期(即第二近的日期,因为日期值越大越接近当前时间)XLOOKUP:以这个第二大日期作为查找关键词,在A列中匹配对应的行,返回该行C列的数值
进阶适配
- 限定数据范围:如果A列存在空白单元格,建议指定具体数据范围(假设数据从第2行到第5行):
=XLOOKUP(LARGE(A2:A5,2),A2:A5,C2:C5)
- 动态适配新增数据:如果后续会在A列新增日期数据,可结合
FILTER过滤空白行:
=XLOOKUP(LARGE(FILTER(A:A,A:A<>""),2),A:A,C:C)
- 切换目标列:若要获取对应D列的值,只需将公式中的
C:C替换为D:D即可。
示例验证
针对示例中的日期数据,LARGE(A:A,2)会返回1/15/2022,XLOOKUP匹配后返回对应C列的41,符合预期结果。
内容的提问来源于stack exchange,提问作者PineNuts0
相关产品推荐
相关产品推荐

