用 INDEX 检索第 n 个匹配项
若需在某一区域内查找某值第 n 次出现并返回对应信息,可使用基于 INDEX、ROW、SMALL 及 IF 等函数的公式轻松实现。

如何使用 INDEX 检索某个值第 n 次出现时的相关信息?
如需获取 Usain Bolt 第 3 次匹配对应的信息(如上表所示),可结合 ROW 和 IF 函数,先生成 Usain Bolt 所有值所在行数的数组,再通过 SMALL 函数提取第 n 次匹配的行号,最后将该结果传递给 INDEX 函数,即可获取相同行的对应信息。
通用语法
=INDEX()return_range,SMALL(IF())lookup_array=lookup_value,ROW()lookup_array-ROW(INDEX())lookup_array,1,1))+1),n))
√ 注意:这是一个数组公式,需同时按下 Ctrl+Shift+Enter 请输入内容。
- return_range:用于返回第 n 次匹配信息的数据区域,此处指的是年份或时间范围。
- lookup_array:用于查找第 n 次匹配所在行位置的区域,此处指获胜者的范围。
- lookup_value:您要查找第 n 次匹配的指定值,此处以 Usain Bolt 为例。
- n:表示第 n 次匹配。若要查找某值的第 1 次匹配,请将 n 设置为 1;若要查找第 2 次匹配,请将 n 设置为 2.
要获取 Usain Bolt 第 3 次匹配对应的信息,请将下列公式复制或输入到 G8 和 G9 单元格,并按下 Ctrl+Shift+Enter,即可获得结果:
年份(单元格 G8)
=INDEX()B6:B12,SMALL(IF())C6:C12=G5,ROW()C6:C12-ROW(INDEX())C6:C12,1,1))+1),G6))
时间(单元格 G9)
=INDEX()D6:D12,SMALL(IF())C6:C12=G5,ROW()C6:C12-ROW(INDEX())C6:C12,1,1))+1),G6))

公式说明
以下以此公式为例说明:
=INDEX(B6:B12,)SMALL()IF(C6:C12=G5,)ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6))
- ROW(C6:C12):ROW 函数会返回区域 C6:C12 中每个单元格所在的行号,并以如下数组形式呈现:{6;7;8;9;10;11;12}。
- ROW(INDEX(C6:C12,1,1)):INDEX 和 ROW 函数可返回查找区域 C6:C12 在当前工作表中的首行序号,即 6.
- IF(C6:C12=G5,)ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1)=IF(C6:C12=G5,){6;7;8;9;10;11;12}-6+1):IF 函数会判断区域 C6:C12 中的每个值是否与单元格 G5(即 )UsainBolt)相等。若相等,则返回“对应行号减去 6 再加 1”的结果,否则返回 FALSE。最终结果将生成如下数组:{FALSE;2;3;4;FALSE;FALSE;FALSE}。
- SMALL()IF(C6:C12=G5,)ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6)=SMALL(){FALSE;2;3;4;FALSE;FALSE;FALSE},G6): 此函数片段返回数组中第 3 个(即单元格 )G6 中的值)最小值,也就是 4.
- INDEX(B6:B12,)SMALL()IF(C6:C12=G5,)ROW(C6:C12)-ROW(INDEX(C6:C12,1,1))+1),G6)) = INDEX(B6:B12,4)INDEX 函数将返回年份区域中的第 4 个值(即 )B6:B12 区域的第 4 行),该值为 北京 2008.
相关函数
Excel INDEX 函数可根据指定位置,从某个区域或数组中返回相应的显示值。
IF 函数是 Excel 工作表中最简单且实用的函数之一。它能够执行简单的逻辑判断,并根据比较结果返回不同的值:如果结果为 TRUE,则返回一个值,否则返回另一个值。
Excel ROW 函数可返回所引用单元格的行号。
相关公式
假如您有一组数值及其对应的信息,若需查找某个数值第 n 次出现时所对应的信息,可以通过基于 VLOOKUP 函数的公式来实现。
在 Excel 中,如需获取列表、表格或行中最小值、第 2 小值或第 n 小值对应的数据,可结合使用 INDEX、区分公式和 SMALL 函数。
在 Excel 中,若需获取列表、表格或行中与最大值对应的数据,可结合使用 INDEX、区分公式和 MAX 函数。
如需获取表格中与最小值对应的数据,可结合使用 INDEX、MATCH 和 MIN 函数。
最强最佳办公效率工具
Kutools for Excel —— 助您脱颖而出
| 🤖 | KUTOOLS AI 助手:基于数据分析的革命性升级智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 超级 VLookup:多条件查找 | 多值返回 | 跨多表查找 | 模糊查找…… | |
| 高级下拉列表:便捷下拉列表 | 联动下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列 | 移动列 | 切换隐藏列可见状态 |对比列与选择相同/不同单元格…… | |
| 精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿和表管理器|资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表批量发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线等) ...... | |
| 顶级 15 工具集:12 文本工具(添加文本、删除特定字符……)| 50+ 图表 类型(甘特图……)| 40+ 实用公式(基于生日计算年龄……)| 19 插入工具(插入二维码、按路径插入图片……)| 12 转换工具(小写金额转大写、汇率转换……)| 7 合并和拆分工具(高级合并行、拆分 Excel 单元格……)|…… 以及更多 |
Kutools for Excel 拥有超过 300 项功能,让您一键直达所需……
Office Tab —— 让 Microsoft Office(包括 Excel)支持标签式阅读与编辑
- 一秒即可切换数十个已打开的文档!
- 每天为您减少数百次鼠标点击,轻松告别鼠标手困扰。
- 在同时查看和编辑多个文档时,让您的工作效率提升高达 50%。
- 为 Office(包括 Excel)带来高效标签页体验,畅享如同 Chrome、Edge 和 Firefox 般的便捷操作。