按条件查找最长文本字符串
本教程将为您介绍如何在 Excel 的列或行中结合条件查找最长的文本字符串,需用到 INDEX、MATCH、LEN 和 MAX 函数。

如何在 Excel 中根据条件查找最长的文本字符串?
要快速查找上方名称区域中来自美国且名字最长的人,可通过结合 INDEX、MATCH、LEN 和 MAX 的公式实现。MAX 函数会根据 LEN 函数返回的字符串长度,筛选出区域中的最大值,然后 MATCH 定位第一个最长值的位置,INDEX 再根据对应位置返回结果。
通用语法
=INDEX()return_range,MATCH(MAX(LEN()))return_range)*(criteria_range=criteria_value)),LEN(return_range)*(criteria_range=criteria_value),0))
√ 注意:这是一个数组公式,需要按 Ctrl+Shift+Enter 键盘组合输入。
- return_range:组合公式将返回最长名称所在的区域,此处指的是名称区域。
- criteria_range:用于列出条件的区域,此处指国家区域。
- criteria_value:您所设定的条件。
要查找上方名称区域中来自美国且名字最长的人,请在单元格 F6 中复制或输入下方公式,并按 Ctrl+Shift+Enter,即可得到结果:
=INDEX()B5:B11,MATCH(MAX(LEN()))B5:B11)*(C5:C11="America")),LEN(B5:B11)*(C5:C11="America"),0))
或者,使用一个单元格引用让公式更具动态性:
=INDEX()B5:B11,MATCH(MAX(LEN()))B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))

公式说明
=INDEX()B5:B11,MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))
- LEN(B5:B11)*(C5:C11=F5):LEN 函数会返回 B5:B11 中每个名字的长度数组,如:{5;5;6;3;4;8;5};而 (C5:C11=F5) 会检查 C5:C11 区域中的每个值是否等于 F5,生成如下数组:{FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE}。两者相乘后,结果为:{0;0;1;0;1;0;1}。最终相乘得到的结果为:{0;0;6;0;4;0;5}。
- MAX()LEN(B5:B11)*(C5:C11=F5))=MAX(){0;0;6;0;4;0;5}):MAX 函数随后会从该数组中返回最大值 {0;0;6;0;4;0;5},即 6.
- MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5) 其中,match_type 0 让 MATCH 函数强制查找第一个与数值 6 完全匹配的项,在该数组 {0;0;6;0;4;0;5} 中。因此返回 3,因为该数值位于第 3 个位置。
- INDEX()B5:B11,MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))= INDEX()B5:B11,3):INDEX 函数返回名称区域 3 位置上的值 B5:B11,即 Oliver.
相关函数
Excel INDEX 函数根据给定位置从区域或数组返回显示值。
Excel MATCH 函数可以在单元格区域中查找指定的值,并返回该值的相对位置。
LEN 函数返回字符串中的字符数。
相关公式
要在 Excel 中查找列或行中最长或最短的文本字符串,可结合使用 INDEX、MATCH、LEN 以及 MAX 或 MIN 函数。
有时,我们需要在 Excel 中查找近似匹配的数值,例如评估员工绩效、为学生评分或根据重量计算邮资。在本教程中,我们将介绍如何利用 INDEX 和 MATCH 函数轻松获取所需结果。
在某些情况下,您可能需要根据多个条件查找最接近或近似的匹配值。通过结合使用 INDEX、MATCH 和 IF 函数,您可以在 Excel 中高效实现这一需求。
这款最佳办公效率工具
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 般的便捷体验。