Excel 用函数在Excel中从文本字符串提取数字

Excel 用函数在Excel中从文本字符串提取数字

ID:39454260

大小:28.37 KB

页数:4页

时间:2019-07-03

Excel 用函数在Excel中从文本字符串提取数字_第1页
Excel 用函数在Excel中从文本字符串提取数字_第2页
Excel 用函数在Excel中从文本字符串提取数字_第3页
Excel 用函数在Excel中从文本字符串提取数字_第4页
资源描述:

《Excel 用函数在Excel中从文本字符串提取数字》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Excel用函数在Excel中从文本字符串提取数字(转)上一篇/下一篇 2008-04-1613:01:08/个人分类:Excel公式使用查看(502)/评论(0)/评分(0/0) 在下文中,我将说明从以下各种情况中的字符串内提取数字的公式:·当字母字符和数字字符连在一起时,如abc123或678sfr。·当字母字符和数字字符没有连在一起时,如 问题如何提取字母数字字符串的数字部分。例如:如果单元格A1包含的是字符串“abc123”,则将值123返回单元格B1中。解决方案此解决方案的基本原理是搜索并返回字母数字字符

2、串中的第一个数字,然后只返回其后的数字。算法;此解决方案包括创建公式以完成下列任务:1.将字母数字字符串分解为单独的字符。2.确定分解后的字符串中是否有数字。3.确定数字在字母数字字符串中的位置。4.计算字母数字字符串中数字的数量。我们将分别考虑这些任务,然后将各公式整合在一起以得到最终结果。将字母数字字符串分解为单独的字符请在此使用MID函数。MID可以根据所指定的字符的数量,从所指定的位置开始,从文本字符串中返回特定数量的字符。此函数的语法是:MID(text,start_num,num_chars)·Text

3、  文本字符串包含的是要提取的字符。·Start_num  要从文本中提取的第一个字符串的位置。文本中第一个字符占据start_num1,以此类推。·Num_chars  指定要MID从文本中返回的字符数量。对于我们的示例,公式为:=MID(A1,ROW($1:$9),1)此公式可以分解字母数字字符串,并且实际上会将字符置于工作表的不同行内。例如,对于字母数字字符串abc123,其所有6个字符都将被分开。 注释   可将数值9适当增大为任何更大的数值,以适应更长的字符串。在此示例中,最大字符串长度为9。值得一提的是

4、,字符串分解之后,“1”、“2”和“3”将被看作文本而不是数字。要将存储为文本的数字转换成数字,请用1乘以此公式,例如:=1*MID(A1,ROW($1:$9),1)确定分解后的字符串中是否有数字在此我们将使用ISNUMBER函数,此函数可以确定字母数字字符串中是否有数字。公式现在变成了:=ISNUMBER(1*MID(A1,ROW($1:$9),1))如果字符串中有数字,则结果将为TRUE,否则结果将为FALSE。确定数字在字母数字字符串中的位置现在我们将通过在上一段中提到的分解后的字符串的结果中查找TRUE值来

5、确定数字的位置。在此我们将使用MATCH函数。经过修改的公式现在变为:=MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$9),1)),0) 要点   必须通过按Ctrl+Shift+Enter将此公式作为数组进行输入。如果字符串是abc123,则此公式产生的结果将是4,这就是字母数字字符串中第一个数字字符的位置。计算字母数字字符串中数字的数量现在的任务是计算字符串中数字的数量,以确定返回字母数字字符串中第一个数字之后要返回的字符。如上所述,可通过用1与其相乘,将字母数字字符串中存储为文本的

6、数字转换成数字。例如,=1*MID(A1,ROW($1:$9),1)将存储为文本的数字转换成数字之后,可以通过使用COUNT函数对其进行计数。可通过输入以下公式计算数字的数量:=COUNT(1*MID(A1,ROW($1:$9),1))整合各公式现在我们将使用MID函数把此公式的各部分整合在一起,如以下示例所示。=MID(A1,MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$9),1)),0),COUNT(1*MID(A1,ROW($1:$9),1)))从本质上说,此问题可陈述为:确定第一

7、个数字在字母数字字符串(在单元格A1中)中的位置。返回此数字及其后的数字。要将得到的字符转换成数字,请用1乘此公式。虽然对此并不严格要求,但如果要对结果执行数学运算,则应该如此操作。下面是要输入单元格B1中的最终公式:=1*MID(A1,MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$9),1)),0),COUNT(1*MID(A1,ROW($1:$9),1))) 要点   必须通过按Ctrl+Shift+Enter将这些公式作为数组进行输入。更多示例要进一步测试此公式,请将下图中的数据输

8、入空工作表中的单元格A1:A7中。将此公式输入单元格B1中,然后使用自动填充将此公式复制到单元格B2:B7中。(不要忘记按Ctrl+Shift+Enter。)在此值得一提的是,如果字符串是yur09875reew,而且您使用的是已乘1的公式,则列B中的结果将是9875而不是09875。因为0*1=0,所以0被忽略了,返回的结果是9875。如果想得到结果098

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。