EXCEL单元格如何提取想要的字符串?

成局渝段336094茶车202轮架,MTCYZ22硬座成局渝段338106尾车209轮架想要把上面的336094、338106提取出来分别放到其他的列便于统计,谢谢各位大... 成局渝段 336094茶车 202轮架,MTC YZ22硬座 成局渝段 338106尾车 209轮架

想要把上面的336094、338106提取出来分别放到其他的列便于统计,谢谢各位大神!
展开
 我来答
我的心情我做主123
科技发烧友

2022-01-12 · 有一些普通的科技小锦囊
知道小有建树答主
回答量:148
采纳率:81%
帮助的人:30.6万
展开全部

首先你要确定想取的二串数字都是6位数的,如果不是6位数,方法不一样。

下面以二串数字固定为6位数做的公式:

假设字符串在A1,取出的二个数字放在B1和C1。

B1公式如下,输完后按CTRL+SHIFT+ENTER生成数组公式,再右拖复制到C1即可。

B1公式:=--MID($A1,SMALL(IFERROR(IF(--MID(SUBSTITUTE($A1," ","a"),ROW(1:99),6),ROW(1:99),),""),COLUMN(A1)),6)

更多追问追答
追问
大神,感谢您的回复,确实不是固定。数据如下:
31376/36198/36199/36788/505 (比如分别提取31736或是36199或505)
338106尾车成局贵段 018救援 (提取338106或018)
追答

如图,B2公式如下,右拖复制到出现#N/A为止,可提取出所有数字。

B2公式:=LOOKUP(9.99E+307,--MID($A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},$A2&56^7,IF(COLUMN()=2,1,FIND(A2,$A2)+LEN(A2)))),ROW(INDIRECT("1:"&LEN($A2)))))

如果“018”取出来就要是"018",而不要变成"18"的话,B4公式如下,虽然公式长了点,但是很有效,这不是数组公式,不用按三按组合:

B4公式:=LOOKUP(9.99E+307,--MID($A4,MIN(FIND({0,1,2,3,4,5,6,7,8,9},$A4&56^7,IF(COLUMN()=2,1,FIND(A4,$A4)+LEN(A4)))),ROW(INDIRECT("1:"&LEN($A4)))),MID($A4,MIN(FIND({0,1,2,3,4,5,6,7,8,9},$A4&56^7,IF(COLUMN()=2,1,FIND(A4,$A4)+LEN(A4)))),ROW(INDIRECT("1:"&LEN($A4)))))

竹璃珠珠
2022-01-12 · TA获得超过377个赞
知道小有建树答主
回答量:443
采纳率:57%
帮助的人:72.6万
展开全部
  1. 如果原来的文本是统一有空格分隔的话,可以先复制一个新表,用 分列,把(xx茶车、xx尾车)这两个作为单独列提取出来

  2. 如果号码是固定6位数,可以再次分列,再粘回原来的表就ok了。

    如果所有数据格式不是统一的:

    1. 在新一列的单元格中输入运算符号=,然后点击【fx】按钮。

    2. 弹出【插入函数】对话框,在【选择函数】中选择函数[LEFT],因为要提取的字符串需要从单元格的左面提取,所以选择这个函数,然后点击【确定】按钮。

    3. 将光标移动到第一个参数后面的对话框中,在工作表中直接选取A2单元格,即要提取的内容所在单元格;

    4. 在第二个参数后面的对话框中输入公式FIND("茶",A2,1);所有参数设置好后点击【确定】按钮。

    5. 返回到工作表中,(茶)前面的字即被提取了出来。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式