You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel数据问题求解:适用的查找公式有哪些?附数据求助

Excel常用查找公式及你的数据问题解法

一、实用的Excel查找类公式

  • VLOOKUP:经典垂直查找,按列匹配目标值
  • XLOOKUP(仅Excel 365/2021及以上):比VLOOKUP灵活,支持正向/反向、精确/通配符匹配
  • INDEX+MATCH:组合用法,适配各种查找场景,不受列顺序限制
  • LOOKUP:单条件下的近似或精确查找
  • FIND/SEARCH:定位文本内特定字符的位置,常配合提取类函数使用

二、针对你数据场景的具体解决办法

从表格数据来看,A列是带序号的文本(比如1. Apple),B列是单独的序号,要在C列提取对应名称,结合查找和文本提取函数就能解决:

方法1:INDEX+MATCH+MID+FIND(全版本Excel通用)

假设B2是要匹配的序号,在C2输入公式:

=MID(INDEX(A:A,MATCH(B2&".*",A:A,0)),FIND(". ",INDEX(A:A,MATCH(B2&".*",A:A,0)))+2,99)

步骤拆解:

  1. MATCH(B2&".*",A:A,0):用通配符*匹配A列里以「序号+点」开头的单元格,找到对应行号
  2. INDEX(A:A,行号):提取该行的完整文本(比如1. Apple)
  3. FIND(". ",文本):定位文本里. 的位置,再用MID从该位置+2处开始,提取后面的所有内容(即名称部分)

如果只需要提取带序号的完整文本,直接用:

=INDEX(A:A,MATCH(B2&".*",A:A,0))

方法2:XLOOKUP(高版本Excel更简洁)

如果你的Excel是365或2021版本,用XLOOKUP更省事:
提取名称:

=MID(XLOOKUP(B2&".*",A:A,A:A,"未找到",2),FIND(". ",XLOOKUP(B2&".*",A:A,A:A,"未找到",2))+2,99)

说明:XLOOKUP的第5参数设为2,支持用*这类通配符匹配

方法3:反向匹配(从带序号文本提取名称)

要是表格是B列存1. Apple这类文本,A列是序号,要直接提取名称,用这个公式:

=MID(B2,FIND(". ",B2)+2,99)

配合VLOOKUP匹配序号的话:

=VLOOKUP(A2,CHOOSE({1,2},LEFT(B2,FIND(". ",B2)-1),MID(B2,FIND(". ",B2)+2,99)),2,0)

三、FIND函数基础用法

FIND(要查找的字符, 目标文本, [起始查找位置]):返回字符在文本中的具体位置,区分大小写;不需要区分大小写的话,换成SEARCH即可。比如FIND(". ","1. Apple")会返回3,因为. 在文本的第3位。

内容的提问来源于stack exchange,提问作者Shahjahan Begum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 09:07:31