- 01
首先,如图在C1单元格中输入公式=--LEFT(B1,LEN(B1)*2-LENB(B1)),获取B1中的数字12345。公式中“--”用来强制转换为数字格式,LEN获取格中文本长度,不管中文数字一律算为1个字符长度,而中文是2个字符长度,所以乘以2,再减掉实际长度LENB(B1),得到数字长度。LEFT为从左边开始获取。
- 02
上面是提取中文前的数字,接下来提取中文后面的数字。那么跟上面的一样操作,只需要把从左侧提取的LEFT函数替换成从右提取的函数RIGHT就可以了,如图函数=--RIGHT(B3,LEN(B3)*2-LENB(B3))
- 03
如果要自动判断前面是数字还是中文再进行提取,就需要用IF进行判断如图中公式“=IF(ISNUMBER(--LEFT(B3,1)),--LEFT(B3,LEN(B3)*2-LENB(B3)),--RIGHT(B3,LEN(B3)*2-LENB(B3)))”,ISNUMBER(--LEFT(B3,1))为检测获取的第一个字符是否为数字,是的话使用第一步中的公式,不是的话使用第二步中的公式。
- 04
如果要提取特殊字符中的数字,可以使用MID函数指从哪个位置开始进行获取,再用Find函数查找截止的特殊字符。如图=MID(B4,2,FIND("^",B4,1)-2),则为从B4格中第二个字符开始,截止到找到的^字符进行获取。
excel从文本中抓取数字(excel从文本中抓取数字内容)
大家好!今天让创意岭的小编来大家介绍下关于excel从文本中抓取数字的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等
只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端
创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008
本文目录:
一、Excel 提取文本中数字公式
在Excel的操作中,有时需要对某个单元格中的文字进行提取数字部分。那要怎样操作呢?下面就来看看方法吧。
工具/材料
Excel2007
二、如何在excel中从文字中提取数字
“在excel中从文字中提取数字”的操作步骤是:
1、打开Excel工作表;
2、由已知条件可知,A列存在着字符与数值混合的情况,且没有规律,需要将字符中的数值通过MID函数提取出来,就需要将A列的字符拆分为每隔一个字符,分别拆成1、2、3、4、5、……字符个数,然后从中找出最大的数值;
3、在B2单元格中输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=MAX(IFERROR(--MID(A2,ROW($1:$20),COLUMN($A:$Z)),))
公式表示:通过MID函数,将A2单元格的字符串按ROW(1:20)的开始字符位置,分别取1-26个字符,然后通过--将文本数值转换为数值,其他文本转换为错误值,并由IFERROR函数将错误值转换为0,然后在所有的数值中取最大值,即为完整的字符串中数值。
三、excel有文字怎么提取数字
打开excel表格,先在表格需要提取数字的首行输入文本中的数字,在表格中选中数字提取的那一列,包括刚才输入了文字数字的首行,根据表格不同选择范围也不同,这里是选中了K2到K5格,同时按下Ctrl加E组合键即可完成文本中的数字提取。
四、[Excel]抽取杂乱文本中的数字
比如这样:
是不是瞬间有一万匹草泥马飘过……
很显然,这一组信息并没有明显的规律。因此,想要提取出其中的数字,必须按照两步走:
1. 找到第一个数字字符在字符串中的位置
2. 找出数字字符的长度
找到第一个数字字符的位置,换句话来形容的话,就是要找到: 字符为0~9,在整个字符串中的最小位置 。
这里我先定义了两个区域分别为 IstNumbers ——包含0~9这10个字符,以及 IstDigits ——包含0~9以及小数点和逗号。稍后,火箭君会详细解释一下,这样定义的具体考虑。
在C4单元格键入公式:
=MIN(IFERROR(FIND(lstNumbers,B4),""))
然后按下CTRL+SHIFT+Enter,完成数组公式的输入。
FIND(IstNumbers,B4) 部分
这个部分公式,是逐一计算0~9这些数字在B4文本中出现的位置。一旦在文本中找到这个数字,则直接返回一个字符位置;否则返回一个错误值。以B4单元格749000 RMB为例,其返回的数组为:
{4;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;1;#VALUE!;3}
意为0出现在第四个位置,4出现在第二个位置,7出现在第一个位置,9出现在第三个位置,其他数字没有出现。
IFERROR(...,"") 部分
这个函数,则将刚才找到的错误值全部转换为空值,返回值变为: {4;"";"";"";2;"";"";1;"";3}
{=MIN(...)}部分
这个函数则返回了,刚才处理过的数组中最小的值,也就是1。这也就是数字字符的起始位置。 当然,由于考虑到我们要比对寻找多个字符,因此用数组计算方式才正确。
由于考虑到原数据中,还存在有逗号、小数点这样的表达形式,因此火箭君在上文中定义了 IstDigits 这个区域。
在D4中键入公式:
=SUMPRODUCT(COUNTIF(lstDigits,MID(B4,ROW($A$1:$A$200),1)))
COUNTIF(lstDigits, MID(…)) 部分
检查B4文本中每一字符在IstDigits中是否出现,是为1,否为0。而整个B4文本总长不超过200个字符。因此返回值为:
{1;1;1;1;1;1;0;0;0;0;0;0;0;…}
也就是B4中,仅有前六位为数字或者逗号、小数点。
SUMPRODUCT(…) 部分
由于上一步的返回值是一个数组,因此使用sumproduct进行求和。在这里返回为6。
仍然有两种格式无法被上述公式所认可,不知道小伙伴你,会有什么想法呢?也欢迎在火箭君的公众号后台留言,说说你的处理想法。
当然,如果你对具体公式还有疑问,可以在公众号里回复 “数字抓取” ,我将推送给你我的工作表!
以上就是关于excel从文本中抓取数字相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。
推荐阅读:
excel如何增加选项内容(excel如何增加选项内容和内容)