基于当前日期匹配显示用户名与金额:INDEX MATCH及VLOOKUP使用疑问
| Date | Username | Amount |
|---|---|---|
| 12/6/2022 | Klington | 3000 |
| 12/6/2022 | Claire | 5000 |
| 12/6/2022 | Sainz | 32000 |
| 12/6/2022 | Slip | 5000 |
我尝试使用INDEX MATCH以及VLOOKUP函数,依据当前日期(TODAY())列出所有对应金额,但未能成功实现需求。
解决方法
方法1:FILTER函数(Excel 365/2021及以上版本)
直接筛选出所有匹配当日日期的金额,是最便捷的方案:=FILTER(C:C,A:A=TODAY(),"无匹配数据")注:A列为日期列,C列为金额列,无匹配时会显示指定提示文本。
方法2:INDEX+SMALL+IF数组公式(兼容旧版Excel)
若不支持FILTER,用数组公式实现批量提取:
在空白单元格输入后按Ctrl+Shift+Enter(旧版Excel),新版直接回车,下拉公式即可列出所有结果:=IFERROR(INDEX(C:C,SMALL(IF(A:A=TODAY(),ROW(A:A)),ROW(1:1))),"")注:通过IF定位符合条件的行号,SMALL按顺序提取行号,INDEX返回对应金额,IFERROR处理无匹配的空白情况。
为什么VLOOKUP/普通INDEX MATCH失效?
这两个函数默认仅返回第一个匹配项,无法一次性输出所有符合条件的结果,这就是你之前失败的核心原因。
内容的提问来源于stack exchange,提问作者King
相关产品推荐
相关产品推荐

