使用IF函数、Index和Match函数按条件显示单元格数据
按日期提取计划与实际数据的实现方案
完全可行,以下是几种实用的实现方法,你可以根据表格结构调整:
方法1:INDEX+MATCH组合公式
假设日期列在A列,计划数据在B列,实际数据在C列,目标提取日期放在E1单元格:
- 提取计划数据:
=INDEX(B:B,MATCH(E1,A:A,0)) - 提取实际数据:
=INDEX(C:C,MATCH(E1,A:A,0))
说明:MATCH(E1,A:A,0)会精准定位目标日期在A列的行号,再通过INDEX从对应列提取数据。若日期存在重复,会返回第一个匹配结果。
方法2:IF函数配合筛选(批量显示整行数据)
若要让目标日期的整行数据显示、其余行隐藏,可在辅助列(如D列)输入:=IF(A2=E1,"显示","")
之后筛选D列为“显示”的行,就能只看到对应日期的计划与实际数据。
方法3:XLOOKUP函数(适用于Excel 365/2021及以上版本)
该函数比INDEX+MATCH更简洁直观:
- 提取计划数据:
=XLOOKUP(E1,A:A,B:B,"无匹配数据") - 提取实际数据:
=XLOOKUP(E1,A:A,C:C,"无匹配数据")
说明:最后一个参数是匹配失败时返回的提示内容,可按需修改。
如果之前使用函数失败,大概率是这几个原因:
- 日期格式不统一(比如一列是文本型日期,另一列是标准日期格式),可先用
DATEVALUE统一格式后再匹配 - MATCH函数的匹配类型参数设置错误,需确保为
0(精准匹配) - 单元格引用范围未覆盖所有数据行
内容的提问来源于stack exchange,提问作者rohannair
相关产品推荐
相关产品推荐

