从单元格中检索第一个列表值
要从特定单元格中检索在某个范围列出的第一个关键字,而该单元格包含多个值之一时,您需要使用一个相当复杂的数组公式,结合 INDEX、MATCH、ISNUMBER 和 SEARCH 函数来实现。
如何从单元格中检索第一个列表值?
为了获取与“关键词”列中的单元格相对应的第一个匹配关键词(如上图所示),这意味着我们需要执行包含匹配而不是精确匹配。为此,您可以将 ISNUMBER 和 SEARCH 函数结合起来,生成一个 TRUE 和 FALSE 数组。然后使用 MATCH 定位第一个 TRUE 值,并将其位置编号传递给 INDEX 以检索该位置的值。
通用语法
=INDEX(关键词范围,MATCH(TRUE,ISNUMBER(SEARCH(关键词范围,查找单元格)),0))
√ 注意:这是一个数组公式,输入时需要按 Ctrl + Shift + Enter。
- 关键词范围:包含关键词的单元格范围。
- 查找单元格:检查是否包含关键词的单元格。
要从单元格 B5 中检索关键词列表中的第一个匹配项,请复制或在单元格 C5 中输入以下公式,并按 Ctrl + Shift + Enter 获取结果:
=INDEX(($E$5:$E$7,MATCH(TRUE,ISNUMBER(SEARCH(($E$5:$E$7,B5)),0))
√ 注意:上面的美元符号 ($) 表示绝对引用,这意味着当您将公式移动或复制到其他单元格时,公式中的关键词范围不会改变。但是,由于您希望查找单元格具有动态性,因此未添加美元符号。输入公式后,向下拖动填充柄以将公式应用到下方的单元格。
公式解释
=INDEX(($E$5:$E$7,MATCH(TRUE,ISNUMBER(SEARCH($E$5:$E$7,B5)),0))
- SEARCH($E$5:$E$7,B5):当在 $E$5:$E$7 范围内找到关键词时,SEARCH 函数会返回其位置为数字,如果未找到则返回 #VALUE! 错误。结果将是一个类似这样的数组:{15;11;#VALUE!}。
- ISNUMBER(ISNUMBER(SEARCH($E$5:$E$7,B5))) = ISNUMBER(ISNUMBER({15;11;#VALUE!})): ISNUMBER 函数会将数组中的数字转换为 TRUE,将 #VALUE! 值转换为 FALSE,结果如下:{TRUE;TRUE;FALSE}。
- MATCH(TRUE,MATCH(TRUE,ISNUMBER(SEARCH($E$5:$E$7,B5)),0),0) = MATCH(TRUE,MATCH(TRUE,{TRUE;TRUE;FALSE},0),0): match_type 0 强制 MATCH 函数执行精确匹配,并返回数组 {TRUE;TRUE;FALSE} 中第一个 TRUE 的位置。因此,函数将返回 1。
- INDEX(($E$5:$E$7,MATCH(TRUE,ISNUMBER(SEARCH($E$5:$E$7,B5)),0)) = INDEX(($E$5:$E$7,1):INDEX 函数随后返回范围 $E$5:$E$7 中的第 1 个值,即 AAA。
备注
- 如果单元格包含两个或更多关键词,公式将返回关键词范围中列出的第一个关键词。
- 该公式不区分大小写。若要执行区分大小写的匹配,可以简单地用 FIND 函数替换 SEARCH 函数。
- 如果您只想检查单元格是否包含此字符串,还可以将关键词列表替换为硬编码字符串作为数组常量(例如 {“AAA”})。
相关函数
Excel INDEX 函数根据给定的位置从范围或数组中返回显示的值。
Excel MATCH 函数在单元格范围内搜索特定值,并返回该值的相对位置。
在 Excel 中,SEARCH 函数可以帮助您从给定的文本字符串中查找特定字符或子字符串的位置,如下图所示。本教程将介绍如何在 Excel 中使用此 SEARCH 函数。
相关公式
假设您有一个关键词列表,要从特定单元格中检索出现的第一个关键词,而该单元格包含多个其他值,您需要使用 INDEX 和 MATCH 公式,并借助 AGGREGATE 和 SEARCH 函数来实现。
如果您需要找出 Excel 中关于某个特定产品、电影或人物等的信息,应该充分利用 INDEX 和 MATCH 函数的组合。
本教程提供了一些公式来检查单元格是否包含特定文本,并返回 TRUE 或 FALSE,如下图所示,同时解释了参数以及公式的运作方式。
假设在 Excel 中,E 列有一系列值,您想检查 B 列中的单元格是否包含 E 列中的所有值,并返回 TRUE 或 FALSE,如下图所示。本教程提供了一个公式来解决此任务。
本教程提供了一个公式来检查单元格是否包含 Excel 中的多个值之一,并解释了公式中的参数以及公式的工作原理。
最佳的办公生产力工具
Kutools for Excel - 助您脱颖而出
🤖 | Kutools AI 助手:基于智能执行革新数据分析:智能执行 | 生成代码 | 创建自定义公式 | 分析数据并生成图表 | 调用 Kutools 函数… |
热门功能:查找、高亮或标记重复项 | 删除空行 | 合并列或单元格而不丢失数据 | 无需公式四舍五入 ... | |
超级 VLookup:多条件 | 多值 | 跨多表 | 模糊查找... | |
高级下拉列表:简易下拉列表 | 级联下拉列表 | 多选下拉列表... | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较列以 选择相同和不同单元格 ... | |
特色功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并工作表 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...) ... | |
排名前 15 的工具集:12 个文本工具(添加文本,删除特定字符 ...) | 50+ 种图表 类型(甘特图 ...) | 40+ 实用 公式(基于生日计算年龄 ...) | 19 个插入工具(插入二维码,从路径插入图片 ...) | 12 个转换工具(小写金额转大写,汇率转换 ...) | 7 个合并和拆分工具(高级合并行,拆分 Excel 单元格 ...) | ... 更多功能 |
Kutools for Excel 拥有超过 300 项功能,确保您所需的一切都仅需一键之遥...
Office Tab - 在 Microsoft Office(包括 Excel)中启用标签式阅读和编辑
- 一秒内在数十个打开的文档之间切换!
- 每天为您减少数百次鼠标点击,告别鼠标手。
- 在查看和编辑多个文档时,您的生产力可提升 50%。
- 为 Office(包括 Excel)带来高效标签页,就像 Chrome、Edge 和 Firefox 一样。