Excel 如何在一串字符中只抽取数字

例如:“品质 IQC 来料检验类 一部 1037438 IQC盖帽检验原始记录”这一长串的字符中,我想把其中的数字串“1037438”提出来,该如何操作。请大虾回答,谢谢啦。下面的9E+307是什么意思?还有,其中的字符长度都是不一样的。我多列几个:生产 生产日报类 一部 1041454 ()工序生产日报表生产 转工单类 一部 1037852 电镀车间产品交接清单生产 产量统计类 一部 1037863 FPC车间 工序产量统计表生产 生产不良类 一部 1037860 生产不良统计使用通用的函数,将其中的数字串都提出来,依次放在另外的单元格中。谢谢。
2026年09月22日 03:03
有5个网友回答
网友(1):

可选用以下方法抽取:
1、给出数字的起始位置和长度。示例公式:=--mid(a1,5,3) 公式结果为提取A1单元格中从第5位开始的3个数字。
2、抽取某特定字符串后的数字。示例公式:=-lookup(0,-mid(a1,find("ABC",a1)+LEN("ABC"),row(1:99))) 公式结果为提取A1单元格中字符串ABC之后的数字。
3、没有给出条件,只要求将单元格中的数字提出。通用公式=-lookup(0,-mid(a1,min(find(row(1:10)-1,a1&1/17)),row(1:99))) 按组合键ctrl+shift+enter结束公式。

网友(2):

这些词汇中间用空格来隔开的吗?
我告诉你先把这些数据存到一个记事本文件里,得到一个后缀为txt的文件
再打开EXEL,选“打开文件”,最下面[文件类型]选择“所有文件”找到刚才那个txt文件的文件夹,打开txt文件,跳出的提示框里选择“分隔符号为空格”就OK了,打开的excel表就已经分列了,直接选数值那列就OK

其实最简单的是用正则表达式,
你有emedit的话直接替换空格为“/t”(制表位),然后把所有内容粘贴进excel就分列了

网友(3):

楼主,你这数据就是一张表,这个之间是用空格隔开的吧,你用“分列”试试
方法如下:
1. 选中这些数据,你这些应该在一列上,不要选多列哦。
2. 菜单“数据”--“分列”,会出现“文本分列向导”窗口
3. 向导第1步不要变,直接下一步
4. 第2步里,把“Tab键”与“空格”都勾选起来,再注意看下面的数据预览
5. 向导第3步,设置各列格式,方法是在“数据预览”里点击该列,再在单选“列数据格式”,如果你只用到数字,那就把其它列都“不导入此列”。

网友(4):

=LOOKUP(9E+307,--MID(A1,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A1&1234567890)),ROW($1:$1024)))

-----
补充:
上面就是通用的函数,
比如上面的公式在B1单元格,鼠标放在B1右下角,变成十字后下拉,复制公式即可.

网友(5):

如果这个单元格是A1.那么公式就是=left(a1,7)
7是代表你要取几个数。如果只取103,那么就是left(a1,3)