跳至主要内容

使用INDEX和MATCH进行多条件查找

Author: Amanda Li Last Modified: 2025-07-31

在处理具有多列和行标题的Excel电子表格中的大型数据库时,要找到符合多个条件的内容总是很棘手。在这种情况下,您可以使用带有INDEX MATCH 函数的数组公式。

multiple criteria index match 1

如何执行多条件查找?

为了找出如上图所示价格为18美元、白色中号产品,您可以利用布尔逻辑生成一个由1和0组成的数组,以显示符合这些条件的行。然后,MATCH函数将找到满足所有条件的第一行的位置。之后,INDEX将找到同一行上的相应产品ID。

通用语法

=INDEX(返回范围,MATCH(1,(条件值1=条件范围1*条件值2=条件范围2*(…),0))

√ 注意:这是一个数组公式,需要您使用Ctrl + Shift + Enter输入。

  • 返回范围:您希望组合公式从中返回产品ID的范围。这里指的是产品ID范围。
  • 条件值:用于定位产品ID位置的标准。这里指的是单元格H3、H5和H6中的值。
  • 条件范围:列出条件值的相应范围。这里指的是颜色、尺寸和价格范围。
  • 匹配类型 0:强制MATCH查找等于查找值的第一个值。

要找到价格为18美元、白色中号的产品,请复制或在单元格H8中输入以下公式,并按Ctrl + Shift + Enter获取结果:

=INDEX(B5:B10,MATCH(1,("白色"=C5:C10)*("中号"=D5:D10)*(18=E5:E10),0))

或者,使用单元格引用来使公式动态化:

=INDEX(B5:B10,MATCH(1,(h3=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0))

multiple criteria index match 2

公式解释

=INDEX(B5:B10,MATCH(1,(h3=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0))

  • (h3=C5:C10)*(H5=D5:D10)*(H6=E5:E10): 公式将单元格h3中的颜色与范围C5:C10中的所有颜色进行比较;将H5中的尺寸与D5:D10中的所有尺寸进行比较;将H6中的价格与E5:E10中的所有价格进行比较。初始结果如下:{TRUE;FALSE;TRUE;FALSE;TRUE;FALSE}*{FALSE;FALSE;TRUE;TRUE;TRUE;FALSE}*{FALSE;FALSE;FALSE;TRUE;TRUE;FALSE}。乘法会将TRUE和FALSE转换为1和0:{1;0;1;0;1;0}*{0;0;1;1;1;0}*{0;0;0;1;1;0}。相乘后,我们将得到一个单一数组:{0;0;0;0;1;0}
  • MATCH(1,MATCH(1,(h3=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0),0) = MATCH(1,MATCH(1,{0;0;0;0;1;0},0),0): 匹配类型0要求MATCH函数查找精确匹配项。然后该函数将返回1在数组{0;0;0;0;1;0}中的位置,即 5
  • INDEX(B5:B10B5:B10,MATCH(1,(h3=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0)) = INDEX(B5:B10B5:B10,5): INDEX函数返回产品ID范围B5:B10中的第5个值,即30005

相关功能

Excel INDEX 函数

Excel INDEX 函数根据给定的范围或数组中的位置返回显示的值。

Excel MATCH 函数

Excel MATCH 函数在一个单元格范围内搜索特定值,并返回该值的相对位置。


相关公式

使用多条件查找最接近的匹配值

在某些情况下,您可能需要基于多个条件查找最接近或近似的匹配值。通过结合INDEX、MATCH和IF函数,您可以快速在Excel中完成此操作。

使用INDEX和MATCH进行近似匹配

有时我们需要在Excel中找到近似匹配项来评估员工的表现、给学生的分数打分、根据重量计算邮费等。在本教程中,我们将讨论如何使用INDEX和MATCH函数检索我们所需的结果。

从另一个工作表或工作簿中查找值

如果您知道如何使用VLOOKUP函数在一个工作表中搜索值,那么从另一个工作表或工作簿中vlookup值对您来说也不是问题。本教程将向您展示如何在Excel中从另一个工作表中vlookup值。


最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于智能执行革新数据分析:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用 Kutools 函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  无需公式四舍五入 ...
超级 VLookup多条件  |  多值  |  跨多表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同单元格 ...
特色功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并工作表  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前 15 的工具集12 个文本工具添加文本删除特定字符 ...)  |  50+ 种图表 类型甘特图 ...)  |  40+ 实用 公式基于生日计算年龄 ...)  |  19 个插入工具插入二维码从路径插入图片 ...)  |  12 个转换工具小写金额转大写汇率转换 ...)  |  7 个合并和拆分工具高级合并行拆分 Excel 单元格 ...)  |  ... 更多功能
使用您偏好的语言来操作 Kutools - 支持英语、西班牙语、德语、法语、中文等 40 多种语言!

Kutools for Excel 拥有超过 300 项功能,确保您所需的一切都仅需一键之遥...


Office Tab - 在 Microsoft Office(包括 Excel)中启用标签式阅读和编辑

  • 一秒内在数十个打开的文档之间切换!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的生产力可提升 50%。
  • 为 Office(包括 Excel)带来高效标签页,就像 Chrome、Edge 和 Firefox 一样。