可返回多条匹配结果的Vlookup替代方案 实现多案件及截止日期查询
无需复杂嵌套公式的实现方案
针对按Item #批量匹配多组对应截止日期的需求,优先使用Excel自带的Power Query工具实现,全程可视化点击操作,无需记忆复杂函数,可自动过滤无关Item #,适配数百条级别的数据量,后续数据更新支持一键刷新。
方法一:全版本Excel通用的Power Query操作步骤(推荐)
- 导入数据到Power Query
- 选中第一个工作表A列的所有Item #数据区域,点击顶部菜单栏「数据」选项卡→「从表格/区域」,确认选中范围后点击确定,自动唤起Power Query编辑器,将当前查询命名为「待匹配列表」,选择「关闭并上载至→仅创建连接」。
- 用相同操作选中第二个工作表中B列(Item #)、C列(截止日期)的完整有效数据区域,导入Power Query后命名为「数据源」,同样设置为仅创建连接。
- 关联匹配并展开结果
- 在Power Query中打开「待匹配列表」查询,点击顶部菜单栏「合并查询」,在弹窗中分别选中两张表的Item #列作为关联匹配字段,连接类型选择「左外部(保留第一个表所有行,匹配第二个表对应行)」,点击确定。
- 合并完成后会生成一列内容为Table的新增列,点击列标题右侧的展开图标,仅勾选「截止日期」字段,取消勾选「使用原始列名作为前缀」,点击确定即可看到所有匹配结果:同一个Item #对应的所有截止日期会逐行展示,无匹配的Item #对应行显示为空,数据源中的无关Item #会被自动过滤不会出现在结果中。
- 导出结果
点击「关闭并上载」,选择将结果导出到第一个工作表B列的起始位置即可。后续数据源更新时,只需右键结果区域点击「刷新」即可自动同步最新匹配结果,无需重复操作。
注:Excel 2016及以上版本自带Power Query功能,2013及更早版本可下载微软官方免费的Power Query插件使用。
方法二:Microsoft 365/2021及以上版本适用的极简函数法
如果你的Excel是较新的订阅版本,不需要嵌套函数,直接在第一个工作表B2单元格输入以下单条公式,按回车后会自动溢出当前Item #对应的所有匹配结果:
=FILTER(Sheet2!C:C,Sheet2!B:B=A2,"无匹配记录")
将公式下拉填充到所有Item #所在行即可完成批量匹配。
需求示例


内容的提问来源于stack exchange,提问作者spreadsheetidiot
相关产品推荐
相关产品推荐

