一、INDEX 函数
作用:根据指定的行和列,返回某个单元格区域或数组中的值
公式:=INDEX(array, row_num, column_num)
●array:单元格区域或数组常量(如 A1:C10 或 {1,2,3;4,5,6})。
●row_num:要返回的第几行(在 array 范围内)。
●column_num:要返回的第几列。
示例1:在多行多列的单元格区域内取值
公式:=INDEX(B2:E11,4,3)

示例2:在单行中取值(可以省略行)
公式:=INDEX(B5:E5,3)【这里的3代表要取值的列】

示例3:在单列中取值(可以省略列)
公式:=INDEX(D2:D11,4)【这里的4代表要取值的行】

二、MATCH 函数
作用:在单行或单列中查找某个指定值,并返回该值在区域中的相对位置(数字)。它不返回实际值,而是返回位置编号 —— 这个位置正好可以作为 INDEX 函数的行或列使用,因此 INDEX + MATCH 是最经典的查找组合
公式:=MATCH(lookup_value, lookup_array, [match_type])
●lookup_value 要查找的值(可以是数字、文本、逻辑值,或者对包含该值的单元格引用)。
●lookup_array 要搜索的一维区域(单行或单列),例如 A1:A100 或 B1:E1。
●match_type (可选)匹配方式:1、0、-1。如果省略,默认为 1。
match_type | 含义 | 要求 | 典型用途 |
精确匹配 | 区域可以不排序 | 最常用:查找精确值 | |
升序近似匹配(小于等于查找值的最大值) | lookup_array 必须升序排列 | 区间查找(如等级评定) | |
降序近似匹配(大于等于查找值的最小值) | ookup_array 必须降序排列 | 特殊场景(极少使用) |
⚠️ 注意:当 match_type = 1 或 -1 时,如果 lookup_value 比数组中所有值都小(或大),函数会返回 #N/A。
示例1:精确查找 match_type=0
公式:=MATCH(A17,B2:B11,0) 后面的0代表精确查找

示例2:精确查找的陷阱
当要查找的学生姓名(存在同名的情况)在查找区域中存在多个相同的内容时,只返回从上到下找到的第一个结果的位置,后面的被忽略。

示例3:近似匹配(match_type = 1)--区间查找
按照A列的等级分查找 85分对应的等级位置
公式:=MATCH(85,A2:A6,1)

三、INDEX+MATCH函数的组合使用
示例1:查找语文成绩的等级分
公式:=INDEX($G$2:$G$6,MATCH(C2,$F$2:$F$6,1))

对于函数的使用,只是看文字和图片,还是不容易理解。感兴趣的朋友可以,点击下面的链接下载Excel文件,直接查看公式和函数。
【示例Excel文件链接地址】
【往期文章回顾】
Excel常用78个函数-3,4,5,6 COUNT,COUNTA,COUNTIF,COUNTIFS函数
夜雨聆风