Excel表格里有文字有数字怎样提取数字(电子表格如何提取字符串中的数字)

昨天我们讲了字符串中数字在前面或在后面时的提取办法,今天我们来看下若是数字在中间该怎么办?在解决问题之前我们先学习下会用到的另外两个函数,ISNUMBER,MATCH。

1、ISNUMBER

ISNUMBER(value),检测一个值是否为数字,是就返回TRUE,否则返回FALSE。

如下图:

如果是嵌套使用时检测一个数组区域中是否有数字,结果将以数组的形式输出被引用。

2、MATCH

MATCH(lookup_value, lookup_array, [match_type])

返回该项在此区域中的相对位置,匹配方式分为1,0,-1,分别对应下列情况:

1或者是省略,MATCH 查找小于或等于 lookup_value 的最大值;

0,MATCH 查找完全等于 lookup_value 的第一个值;

-1,MATCH 查找大于或等于 lookup_value 的最小值。lookup_array 参数中的值必须按降序排列,例如:TRUE, FALSE, Z-A, ...2, 1, 0, -1, -2, ... 等等。

实例如下图:

3、数字提取

学习了上面的函数后,我们来解决下今天的问题。如下图,提取数字。

我们先以不含小数点的数字提取为例。

思路:从字符串中间开始提取字符用MID函数,所以我们只需确定从第几位开始提取,一共提取几位字符,只要确定了这两个参数,问题就迎刃而解了。

从第几位开始提取?昨天刚学习了lookup,他能找到字符串中最后一个数字出现的位置,所以在B1中输入:

=lookup(1,-mid(A1,ROW($1:$10),1),ROW($1:$10))

把A1中的字符串拆解成{"你";"好";"4";"5";"m";"g";"";"";"";""},由于拆解出来的数字被当作了文本,前面加个负号就变成了{"你";"好";-4;-5;"m";"g";"";"";"";""},然后用lookup以1为查找值就会查找到-5,返回对应的行号即4,意思是字符串中最后一个数字在第四位。

用count对字符串中的数字进行计数

=COUNT(-MID(A1,ROW($1:$10),1)),返回2,代表字符串中有两个数字。

最后用mid函数

=mid(A1,4-2 1,2)即可得到想要的结果,中间参数的意思是最后一个数字的位置减去数字位数,然后加1,即得到了开始提取的位数,比如A1中,最后一个数字在第四位,有两位数字,所以从4-2 1=3位开始提取。

公式整合到一起即:

=MID(A1,(LOOKUP(1,-MID(A1,ROW($1:$10),1),ROW($1:$10))-COUNT(-MID(A1,ROW($1:$10),1)) 1),COUNT(-MID(A1,ROW($1:$10),1)))

三键结束。

那找出从第几位开始提取还有没有好的办法呢?

我们用今天学的函数来思考下,

用ISNUMBER来判断A1中是否有数字

=ISNUMBER(-MID(A1,ROW($1:$10),1))返回

{FALSE;FALSE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

用MATCH来找到第一个TRUE的位置,即找到了第一位数字的位置

=MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$10),1)),0)

用COUNT计算出数字位数。

整合在一起即:

=MID(A1,MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$10),1)),0),COUNT(1*MID(A1,ROW($1:$10),1)))

三键结束

这个公式比上面的公式精炼点吧,但是其实本质是一样,都是用MID函数实现提取。

那对于数字中有小数的该怎么提取呢?

这个就不多介绍了,只需要用IF 做个判断,用上面的方法就可以了。

当然如果你用的是16版的excel,那么只需要CTRL E瞬间就可以实现了。

转自:米宏Office

(0)

相关推荐

  • 如何在Excel表格里的手机号和座机号混合文本中将手机号码提取出来

    今天给大家介绍一下如何在Excel表格里的手机号和座机号混合文本中将手机号码提取出来的具体操作步骤.1. 我们以下图的Excel表格内容为例,如图,B列中的一些单元格同时既有手机号码又有座机号码.我们 ...

  • excel表格里数字和文字混合一起如何把数字提取

    在EXCEL表格里,数字与文字是混合在一起的,比如,有些单元格是数字+文字,有些单元格是文字+数字,而有些单元格是文字+数字再+文字.那么,这种情况的表格,如何把数字给提取出来了呢. 操作方法 01 ...

  • 在excel表格里,如何设置文字对齐方式

    在excel表格里,填写数字或文字的时候,我们常常需要调整对齐方式,那么到底如何进行处理呢 操作方法 01 打开excel表格,如图所示,已经填写好数字或文字了 02 选中excel表格,如图所示 0 ...

  • 怎么提取excel表格里中的部分数据?文字提取

    在进行excel处理的时候,我们可能会运用到一些相关的知识,如对身份证上生日的提取,对一列数组中数字的提取以及文字的提取等.本文以例子为依据,为大家介绍如何进行表格部分数据的提取. 操作方法 01 将 ...

  • excel表格里小写数字如何自动生成大写数字呢?

    在日常办公中,经常会碰到打印收据票据之类的东西,有时在金额方面,写上了小写,又很麻烦写上大写,真的很不便,那么对于还不明白小写数字自动生成大写数字的网友,其实通过设置单元格格式就可以,可以参考一下这里 ...

  • 怎么给excel表格里的数字排序

    excel是一款电子表格软件,它拥有直观的外形.优异的计算功能.然而,仍然有不少用户对于一些操作不太熟悉,他们问道:怎样才能给excel表格里的数字排序呢?小编今天给大家分享解决这个问题的方法.具体如 ...

  • 怎么在excel表格里输入并显示0开头数字?

    在excel表格中直接输入0开头数字,移到下一单元格0会消失,今天小编介绍一下显示这种开头的"0"的方法.具体如下:1. 第一步,在电脑上打开excel2019,进入一个空白表格文 ...

  • EXCEL表格里小写数字如何自动生成大写数字?

    通过设置单元格格式就可以,具体操作步骤如下: 1.选中需要大写的数字,右键单击选中"设置单元格格式"选项: 2.依次选择:"特殊"-"中文大写数字&q ...

  • 在Excel表格里如何快速输入百分号?

    许多小伙伴在处理数据的时候会使用到excel,如果我们想要在表格中快速输入百分号应该如何操作呢?今天,小编就教大家在Excel表格里如何快速输入百分号.具体如下:1. 首先,我们在电脑中将excel打 ...

  • 怎么解决Excel表格里输入身份证后几位变成0的问题

    在使用Excel表格输入身份证号码时,我们可能遇到这样的情况:当输入后几位的身份证号时,全部显示成了0,怎么办呢?小编为大家解答.具体如下:1. 首先,请大家将excel表格打开,然后在其中输入一串身 ...