文章目录[隐藏]
使用 Excel 表格时,您可能会不断发现需要查找值的情况。 在本教程中,我们将向您展示如何应用 INDEX 和 MATCH 函数的组合来进行水平和垂直查找、双向查找、区分大小写的查找以及满足多个条件的查找。
INDEX 和 MATCH 函数在 Excel 中的作用是什么
在我们使用 INDEX 和 MATCH 函数之前,让我们先确保我们知道 INDEX 和 MATCH 如何帮助我们查找值。
Excel中INDEX函数的使用
指数 Excel 中的函数返回特定范围内给定位置的值。 INDEX 函数的语法如下:
=INDEX(array, row_num, [column_num])
- 排列 (required) 是指您要从中返回值的范围。
- 行数 (必需,除非存在 column_num)指的是数组的行号。
- 列数 (可选,但如果省略 row_num 则是必需的)指的是数组的列号。
例如,要知道 杰夫的期末考试成绩,列表中的第 6 个学生,您可以像这样使用 INDEX 函数:
=索引(E2:E11, 6) >>> 返回 60
√ 注:范围 E2:E11 是列出期末考试的地方,而数字 6 找到考试成绩 6第一个学生。
下面我们来做一个小测试。 对于公式 =指数(B2:E2,3),它会返回什么值? —是的,它会回来 中国中, 3 给定范围内的值。
现在我们应该知道 INDEX 函数可以完美地处理水平或垂直范围。 但是如果我们需要它返回一个包含多个行和列的更大范围内的值怎么办? 那么,在这种情况下,我们应该同时应用行号和列号。 例如,要找出 艾米丽来自的国家 使用INDEX,我们可以在单元格中通过B8到E3定位行号为2,列号为11的值,如下所示:
=指数(B2:E11,8,3) >>> 返回 中国
根据上面的例子, 关于 Excel 中的 INDEX 函数,您应该知道:
- INDEX 函数可以处理垂直和水平范围。
- INDEX 函数不区分大小写。
- 在 INDEX 公式中,行号位于列号之前(如果您需要两个数字)。
但是,对于一个非常大的多行多列的数据库,我们应用精确的行号和列号的公式肯定不方便。 而这正是我们应该结合使用 MATCH 函数的时候。
现在,让我们先了解一下 MATCH 函数的基础知识。
Excel中MATCH函数的使用
Excel 中的 MATCH 函数返回一个数值,即给定范围内特定项目的位置。 MATCH 函数的语法如下:
=MATCH(lookup_value, lookup_array, [match_type])
- 查找数组 (必填)是指您希望 MATCH 搜索的单元格范围。
- 比赛类型 (可选的), 1, 0 or -1:
- 1(默认),MATCH 将找到小于或等于 Lookup_Array中. 中的值 查找数组 必须按升序排列。
- 0, MATCH 将找到第一个完全等于 Lookup_Array中. 中的值 查找数组 可以按任何顺序排列。 (对于匹配类型设置为0的情况,可以使用通配符。)
- -1, MATCH 将找到大于或等于 Lookup_Array中. 中的值 查找数组 必须按降序排列。
例如,要知道 Vera 在名单中的位置,您可以像这样使用 MATCH 公式:
=MATCH(“vera”,C2:C11,0) >>> 返回 4
√ 注意:MATCH 函数不区分大小写。 结果“4”表示名称“Vera”位于列表的第 4 位。 公式中的“0”是匹配类型,它将在查找数组中找到与查找值“Vera”完全相等的第一个值。
要知道 分数“96”在B2到E2行中的位置,您可以像这样使用 MATCH:
=匹配(96,B2:E2,0,XNUMX) >>> 返回 4
☞ 关于 Excel 中的 MATCH 函数,我们应该知道的事情:
- MATCH 函数返回查找值在查找数组中的位置,而不是值本身。
- MATCH 函数在重复的情况下返回第一个匹配项。
- 就像 INDEX 函数一样,MATCH 函数也可以处理垂直和水平范围。
- MATCH 也不区分大小写。
- 如果 MATCH 公式的查找值是文本形式,请将其括在引号中。
现在我们已经了解了Excel中INDEX和MATCH函数的基本用法,让我们撸起袖子准备将这两个函数结合起来。
如何同时使用 INDEX 和 MATCH 函数
在这一部分,我们将讨论不同情况下使用 INDEX 和 MATCH 函数来满足不同的需求。
组合 INDEX 和 MATCH 的示例
请参阅下面的示例以了解我们如何组合 INDEX 和 MATCH 函数:
例如,要知道 伊芙琳的期末考试成绩,我们应该使用公式:
=INDEX(A2:D11,MATCH(“evelyn”,B2:B11,0),MATCH(“final exam”,A1:D1,0)) >>> 返回 90
好吧,由于公式可能看起来很复杂,让我们来看看它的每个部分。
如上图所示,大 指数 公式包含三个参数:
- 排列: A2:D11 告诉 INDEX 通过从单元格返回匹配值 A2 至 D11.
- 行数: 匹配(“伊芙琳”,B2:B11,0) 告诉 INDEX 值的确切行。
- 关于MATCH公式,我们可以解释为:以数值形式返回B2到B11单元格中与“evelyn”完全相等的第一个值的位置,即 5.
- 列数: MATCH(“期末考试”,A1:D1,0) 告诉 INDEX 值的确切列。
- 关于MATCH公式,我们可以解释为:以数值形式返回A1到D1单元格中与“期末考试”完全相等的第一个值的位置,即 4.
所以,你可以看到这个大公式和我们下面展示的一样简单:
= INDEX(A2:D11,5,4)
在示例中,我们使用了硬编码值“evelyn”和“期末考试”。 然而,在如此大的公式中,我们不想要硬编码的值,因为每次我们要搜索新的东西时,我们都必须更改它们。 在这种情况下,我们可以使用单元格引用使公式动态如下:
= INDEX(A2:D11,比赛(G2,B2:B11,0),比赛(F3,A1:D1,0))
INDEX 和 MATCH 应用左查找
现在,假设您需要了解 Evelyn 的课程,我们如何使用 INDEX 和 MATCH 来知道答案? 如果你注意了,你应该注意到类列在名称列的左侧,这超出了另一个 Excel 强大的查找功能 VLOOKUP 的能力。
其实,左查找能力恰好是INDEX和MATCH组合优于VLOOKUP的方面之一。
要知道 伊芙琳的课堂,您需要做的就是将单元格 F3 中的值更改为“类”,并使用与上图相同的公式,然后 INDEX 和 MATCH 函数将立即告诉您答案:
=INDEX(A2:D11,MATCH(G2,B2:B11,0),MATCH(F3,A1:D1,0)) >>> 返回 A
如果你有安装领导 Kutools for Excel, 由我们团队开发的专业 Excel 插件,您还可以使用其对指定值应用左查找 从右到左查找 只需点击几下即可。 要实现该功能,请访问 库工具 在你的 excel 标签中,找到 公式 组,然后单击 从右到左查找 在下拉列表中 超级查找. 你会看到一个这样的弹出对话框:
单击此处了解使用 Kutools for Excel 应用左查找功能的具体步骤。
INDEX 和 MATCH 应用双向查找
现在,您是否能够使用动态查找值制作 INDEX 和 MATCH 组合公式来应用双向查找? 让我们练习在单元格 G3、G4 和 G5 中制作公式,如下所示:
以下是答案:
单元格 G3: =INDEX(A2:D11,MATCH(G2,B2:B11,0),MATCH(F3,A1:D1,0))
单元格 G4: =INDEX(A2:D11,MATCH(G2,B2:B11,0),MATCH(F4,A1:D1,0))
单元格 G5: =INDEX(A2:D11,MATCH(G2,B2:B11,0),MATCH(F5,A1:D1,0))
√ 注意:应用公式后,您可以通过更改单元格 G2 中的名称轻松获取任何学生的信息。
INDEX 和 MATCH 应用区分大小写的查找
从上面的例子我们知道INDEX和MATCH函数是不区分大小写的。 但是,在您需要公式区分大小写字符的情况下,您可以添加 精确 函数到你的公式是这样的:
=INDEX(return_range,MATCH(TRUE,EXACT(“lookup_value1”,range1),0),MATCH(“lookup_value2”,range2,0))
√ 注意:这是一个数组公式,需要输入 Ctrl + Shift + Enter. 一对大括号将显示在公式栏中。
例如,要知道 吉米的考试成绩,使用这样的函数:
=INDEX(A2:C11,MATCH(TRUE,EXACT(“JIMMY”,A2:A11),0),MATCH(“final exam”,A1:C1,0)) >>> 返回 86
或者您可以使用单元格引用:
=INDEX(A2:C11,MATCH(TRUE,EXACT(F2,A2:A11),0),MATCH(E3,A1:C1,0)) >>> 返回 86
√ 注意:不要忘记输入 Ctrl + Shift + Enter.
INDEX 和 MATCH 以应用具有多个条件的查找
在处理具有多个列和行标题的大型数据库时,找到满足多个条件的内容总是很棘手。 在这种情况下,请参阅以下公式以查找多个条件:
=INDEX(return_range,MATCH(1,(lookup_value1=range1)*(lookup_value2=range2)*(…),0))
√ 注意:这是一个数组公式,需要您输入 Ctrl + Shift + Enter. 一对大括号将显示在公式栏中。
例如,找到 来自印度的A班Coco的期末考试成绩,公式如下:
=INDEX(D2:D11,MATCH(1,(G2=A2:A11)*(G3=B2:B11)*(G4=C2:C11),0)) >>> 返回 88
√ 注意:不要忘记输入 Ctrl + Shift + Enter.
那么,如果你经常忘记使用怎么办 Ctrl + Shift + Enter 完成公式,使公式返回不正确的结果? 这里我们有一个更复杂的公式,你可以用一个简单的公式来完成 输入 键:
=INDEX(return_range,MATCH(1,INDEX((lookup_value1=range1)*(lookup_value2=range2)*(…),0,1),0))
对于上面的相同示例,找到 来自印度的A班Coco的期末考试成绩,只需要一个通常的公式 输入 命中如下:
=INDEX(D2:D11,MATCH(1,INDEX((G2=A2:A11)*(G3=B2:B11)*(G4=C2:C11),0,1),0)) >>> 返回 88
在这里我们不会使用硬编码值,因为在具有多个条件的情况下我们需要一个通用公式。 只有这样,我们才能通过改变上例中 G2、G3、G4 单元格中的值,轻松得到我们想要的结果。
Kutools for Excel和■ 多条件查找功能,您只需点击几下即可查找具有多个条件的特定值。 要实现该功能,请访问 库工具 在你的 excel 标签中,找到 公式 组,然后单击 多条件查找 在下拉列表中 超级查找. 然后您将看到一个弹出对话框,如下所示:
单击此处了解使用 Kutools for Excel 应用多条件查找功能的具体步骤。
INDEX 和 MATCH 在多列中应用查找
如果我们有一个 Excel 电子表格,其中不同的列共享一个标题,如下所示,我们如何使用 INDEX 和 MATCH 将每个学生的姓名与他/她的班级匹配?
在这里,让我向您展示使用我们的专业工具完成任务的方法 Kutools for Excel。 随着它 公式助手, 您可以按照以下步骤快速将学生与其班级进行匹配:
1. 选择要应用该功能的目标单元格。
2。 在下面 库工具 标签,转到 公式助手,单击“ 公式助手 在下拉列表中。
3。 选择 从公式类型查找,然后点击 索引并匹配多列.
4. A. 点击第一个 右侧的按钮 Lookup_col 选择要从中返回值的单元格,即类名。 (您只能在此处选择单列或单行。)
湾点击第二个 右侧的按钮 表_rng 选择单元格以匹配所选中的值 Lookup_col,即学生的姓名。
C。 点击第三个 右侧的按钮 查找值 选择要查找的单元格,即您要与其班级匹配的学生姓名。
5. 单击确定,您将看到目标单元格中显示 Jimmy 的班级名称。
6. 现在您可以向下拖动填充手柄以填充其他学生的班级。
点击下载 Kutools for Excel 进行 30 天免费试用.
- 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围…
- 合并单元格/行/列 和保存数据; 拆分单元格内容; 合并重复的行和总和/平均值…防止细胞重复; 比较范围…
- 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择…
- 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等…
- 收藏并快速插入公式,范围,图表和图片; 加密单元 带密码 创建邮件列表 并发送电子邮件…
- 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换…
- 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体…
- 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF…
- 数据透视表分组依据 周号,周几等 显示未锁定的单元格 用不同的颜色 突出显示具有公式/名称的单元格…
- 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
- 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
- 每天将您的工作效率提高50%,并减少数百次鼠标单击!