技术需求:实现可按指定日期展示数据的函数功能
实现日期筛选展示数据的方案
假设你的数据区域为A2:D100(请替换为实际数据范围),日期列是A列,上方用于输入日期的单元格为E1(替换为你实际的输入单元格),可以用以下方案实现需求:
方法1:使用FILTER函数(适用于Excel 365/2021及以上版本)
=IF(ISBLANK(E1), A2:D100, FILTER(A2:D100, A2:A100=E1))
- 逻辑说明:
- 当输入日期的单元格
E1为空时,直接返回全部数据区域 - 当
E1填入日期后,自动筛选出日期列与输入日期匹配的所有行数据
- 当输入日期的单元格
你已经在「Report Day & time」单元格设置了=Today(),可以直接将公式中的E1替换为该单元格的引用(比如该单元格是B1,就改成B1),这样默认会展示当天的数据,手动修改该单元格日期时则展示对应日期的数据。
方法2:兼容旧版Excel的数组公式
如果你的Excel版本不支持FILTER函数,可使用以下数组公式(输入完成后按Ctrl+Shift+Enter确认):
=IF(ISBLANK(E1), A2:D100, INDEX(A2:D100, SMALL(IF(A2:A100=E1, ROW(A2:A100)-ROW(A2)+1), ROW(A2:A100)-ROW(A2)+1), COLUMN(A2:D100)))
- 逻辑说明:通过
IF判断输入单元格状态,结合INDEX和SMALL函数筛选出匹配日期的数据行,空值时返回全部数据。
内容的提问来源于stack exchange,提问作者Ali Poorabbas
相关产品推荐
相关产品推荐

