在 Excel 数据处理中,经常会遇到这样一种需求:根据一个条件值,在源数据表中同时查找并返回多个对应字段的数据。例如输入员工工号,需要一次性匹配出对应的姓名、性别和工资。如果使用 VLOOKUP,不仅列顺序受限,多列查找还要重复写公式。这时,INDEX + MATCH 组合公式就是一个更灵活、更专业的解决方案。

一、问题场景说明

如下示例所示,左侧为员工源数据表,包含工号、姓名、性别、工资等信息。右侧为查询区域,只需在指定单元格输入工号,就要快速匹配并返回对应的多列数据结果。这种典型的“一查多返”需求,在人事管理、数据汇总、信息查询中非常常见。

二、INDEX + MATCH 组合公式原理

INDEX + MATCH 的通用写法为:

=INDEX(结果列, MATCH(查找值, 查找列, 0))
  • INDEX:负责返回结果

  • MATCH:负责定位行号

  • 0:表示精确匹配

相比 VLOOKUP,这种组合不受列顺序影响,查找更稳定。

三、分列返回多个匹配结果

假设姓名位于 B 列:

1、匹配工资数据

=INDEX(D:D,MATCH(G2,B:B,0))
一个公式搞定多列查找:INDEX+MATCH 高级用法详解-天天办公网
匹配工资数据

2、匹配员工工号

=INDEX(A:A,MATCH(G2,B:B,0))
一个公式搞定多列查找:INDEX+MATCH 高级用法详解-天天办公网
匹配员工姓名

3、匹配员工性别

=INDEX(C:C,MATCH(G2,B:B,0))
一个公式搞定多列查找:INDEX+MATCH 高级用法详解-天天办公网
匹配员工性别

只需更换 INDEX 的“结果列”,即可快速获取不同字段信息。

四、一个公式同时返回多列结果

如果希望一次性返回多个字段数据(如工资、姓名、性别),可以结合 CHOOSE 函数:

=INDEX(CHOOSE({1,2,3},D:D,A:A,C:C),MATCH(G2,B:B,0))
该公式会按顺序返回多个结果,适合动态查询或高级数据展示。
一个公式搞定多列查找:INDEX+MATCH 高级用法详解-天天办公网

总结

使用 INDEX + MATCH,可以轻松实现 Excel 中的多列查找需求,不仅灵活高效,还能避免传统查找函数的局限。如果你经常需要按条件匹配多项数据,这套方法非常值得掌握。