Excel教程:如何提取数字?会这几招就够了

有读者留言希望能够整理一期内容,讲解从数字、汉字中提取汉字或者数字的方法,本文将对比较常见的几类提取情况进行讲解。使用公式提取单元格内的数字,要根据具体的数据结构找到某种规律从而设计出对应的公式。当然也有所谓的万能提取公式,不过非常复杂并且计算量大,因此只在文末简单说明。

第一类情况:数字在左侧

  • 例一:数字在左侧,且数字位数固定。

在这个例子中,数据非常有规律,数字都在左边的三位,要想将学号单独提取出来,只需要使用left函数即可:=LEFT(A2,3)

公式也非常简单,第一个参数是要提取数字的单元格,第二个参数是要提取几位(从左边算起)。对于例一的这一类数据,使用的时候根据数字的长度修改第二参数即可。

  • 例二:数字在左侧,数字位数不固定,但是有明显的分隔符号。

如果数字长度不是固定的三位,使用之前的方法就不行了,如下图。这时就需要找到数据源的规律,再利用规律进行操作。当前的数据统一存在一个"-"号,可以根据"-"号的位置来确定数字的长度,再用left提取。

对于这种情况需要用到另一个函数来帮忙,那就是find函数。

利用公式=FIND("-",A2,1)可以确定"-"的位置。

find函数有三个参数,第一个参数是要找什么内容,第二个参数是从哪里找,第三个参数是从第几个字开始找(从左边算起)。

=FIND("-",A2,1) 意思是在A2单元格找“-”,从开始位置找(左边第一位)。公式的结果是数字,代表“-”在单元格的位置(第几个字符),此时我们需要提取的数字长度就是find的结果减1,因此方法就有了:=LEFT(A2,FIND("-",A2,1)-1)

这个方法的适用范围也比较广泛,只要可以发现比较明显的分隔符号(可以是符号,汉字,字母等等内容),都可以使用这个方法。

  • 例三:数字在左边,位数不固定并且没有明显的分隔符号。

如果数据是这种情况,那么前面的方法都不能用了,数字长度不确定,也没分隔符号,唯一的规律就是数据里只有数字和汉字(没有字母以及其他符号)。

在Excel中,字符的长度有两种,半角字符(数字,字母以及英文方式下输入的符号)长度为1,而全角字符(汉字和中文符号等)长度为2。可以通过一个实例来了解这一点:

len函数是一个专门计算单元格内容长度的函数,不区分全角半角,其长度与我们平时理解的一致,相当于字符的“个数”。下面再来看看区分全角和半角的情况:

lenb函数的作用于len函数一致,区别就是计算内容的长度时会区分半角全角,从结果可以看出明显的差异。其中文字按全角计算的长度是不区分全半角的2倍,而数字、字母在两种情况下则完全一致。

对于例三的情况,就需要使用len与lenb来确定数字的长度,再用left提取。

利用公式=LEN(A2)*2-LENB(A2)可以确定数字的长度,如下图所示。

为什么len*2-lenb就会得到数字的长度呢?

根据前面两种情况下的对比结果,lenb统计长度,文字长度是len统计值的两倍,而数字长度与len统计值一致,所以公式len*2-lenb就可以计算出数字的长度了。

数字的长度统计出来以后,解决方法显而易见:=LEFT(A2,LEN(A2)*2-LENB(A2))

例三这种情况同样比较典型,只要记住是len*2-lenb就可以了,如果确实记不住,那么遇到问题的时候可以单独算一算,先把数字的长度算出来,再组合left就行了。

  • 例四:数字在左边,并且含有字母等半角字符。

这种情况很复杂,唯一的规律就是数字在左边。来看看如何解决吧。

可以利用公式:=-LOOKUP(1,-LEFT(A2,ROW($1:$9)))。

关于这个公式,要解释的话估计还得五千字,所以各位只需要记得套路即可,唯一有可能修改的就是最后面那个9,当最长的数字超过9位时,就要修改这个9,可以直接用99来完成。

最后,这个公式适用于任何数字在左边的情况

第二类情况:数字在右边

数字在右边的情况与数字在左边非常类似,以下仅做简单说明:

数字位数固定的直接用right提取;

数字位数不固定但有分隔符号的使用find函数配合mid函数 完成提取:=MID(A2,FIND("-",A2,1)+1,9)

注:公式中最后一个参数值“9”需要根据数字的最大位数修改,譬如提取的数字最大位数是10,则需要写成10或者大于10的数字。)

数字位数不固定同时没有分隔符的还是可以使用len和lenb的组合:=RIGHT(A2,LEN(A2)*2-LENB(A2))

什么规律都没有的继续让lookup发大招:=-LOOKUP(1,-RIGHT(A2,ROW($1:$9)))

第三类情况:数字在中间

数字在中间这种非常特殊,比较规范的数据源中一般不会出现这样的情况,举一个例子吧:

例如图中这种数据,如果数字前面或者后面的长度固定,可以先用函数将内容变成前面讨论过的情况再去处理:

公式比较简单,不做解释了,至于后面一步怎么做,根据前面的学习你已经会了吧?

下面要说的这个方法就是一种比较通用的方法了,有人称其为万能提取公式:

=-LOOKUP(0,-MID(A1,MIN(FIND(ROW($1:$10)-1,A1&1/17)),ROW($1:$9)))

数组公式,需要按三键“Ctrl+shift+回车”结束。

小结

关于如何使用公式提取单元格内的数字,以上将绝大多数情况都进行了说明,当然不是全部,例如含有小数的情况,因为有了小数点,就更加特殊了。

最后的那个数组公式可以算是一个比较通用的公式了。需要强调的是:大部分的问题之所以变得非常麻烦,就是因为不规范的数据源导致的,因此养成好的习惯,一个单元格只存放一种属性的数据,例如把名称与数量、价格等信息分开存放,这样就会大大地提高统计效率。

当然站在提高公式运用能力的角度来说,数字提取这一类问题也是函数练习的好题目。希望大家能够结合以前学过的函数,思考出更多的公式来实现数字的提取。

来源:部落窝教育                作者:老菜鸟

(0)

相关推荐

  • 如何把数字提取出来

    送人玫瑰,手有余香,请将文章分享给更多朋友 动手操作是熟练掌握EXCEL的最快捷途径! 我们在日常的工作中遇到的最多的问题无外乎就是文本处理.统计求和查找引用了.今天就继续和大家分享一道文本处理方面的 ...

  • 文本函数len和lenb的用法

    之前说过很多文本函数,今天说说len和lenb的用法.这个函数有2种形式,一种是len,一种是lenb.len是返回字符串中字符的个数,而lenb是返回字符串中字节的个数.它们的区别就在于后缀的b,b ...

  • 5个函数公式加一个Excel技巧,完美提取数字,一键提取更牛

    [温馨提示]亲爱的朋友,阅读之前请您点击[关注],您的支持将是我最大的动力! 日常工作中,我们经常会收到一些这样的Excel文件:文本其中包含了中文.字母.数字,而且都堆积到一个单元格内.但是,我们想 ...

  • Excel表格上面LEN、LENB函数的使用

    3062次浏览 2019.03.29更新 我们在判断表格里面的文本长度是否符合要求时,可以使用LEN.LENB函数进行字符计算,再结合IF函数进行判断,这就不需要我们用肉眼去判断,方便快捷. 工具/材 ...

  • Excel教程:文本数字混杂的单元格提取数字并汇总

    公众号回复:入群,下载练习课件 从文本中提取数字汇总的方法很多,可以根据自己熟悉的方法来解决就好.本文分享两种方法,如下. 第一,快速填充法 借助辅助列,在C2.C3单元格手动输入数字,然后下拉快速填 ...

  • Excel字符串中提取数字,不需要大神级公式

    小勤:大海,救命!有个二货给的表里面有一列中英文.数字.标点符号全混在一起的,我要把数字提出来! 大海:呵呵.网上不是有很多大神写过很牛B的公式吗? 小勤:我找过了,找到一个,完全看不懂!而且试了一下 ...

  • Excel中如何提取数字?会这几招就够了

    回复[目录]学习113篇Excel教程 全套Excel视频教程,微信扫码观看 有读者留言希望能够整理一期内容,讲解从数字.汉字中提取汉字或者数字的方法,本文将对比较常见的几类提取情况进行讲解.使用公式 ...

  • Excel教程:在Excel中提取数字,最好用的3种方法!

    限量50份  限时0元领 价值99元的<财务人的Excel速成课>全套视频,永久观看,配套练习素材,每天老师辅导答疑,今天免费送给你!快快长按识别二维码领取吧~ 编按: 哈喽,大家好!前面 ...

  • 还为提取数字单号、文本关键词犯愁?四个Excel函数轻松解决问题

    从杂乱的文本内容中,提取我们需要的数字或者是文本,对于处理数据的同学来讲应该是经常会碰到的一个问题.今天我们就来学习一下,如何通过函数公式,快速提取我们需要的数字和文本内容. 案例一:如何快速从不规范 ...

  • Excel教程:FIND+MID函数,乱序产品规格中提取型号

    Excel中,在一串字符串里面提取部分内容,根据工作表格实际情况,我们可以使用分列.快速填充.函数公式或者PQ等方法来实现. 下面表格里面,A列是产品规格,需要将"DP-"这一段字 ...

  • Excel 公式:从文本中提取数字

    首先看一下实例图片,在一串文本中,数字有可能在文本的开始处.结尾处或中间. 现在针对这三种情况,给出三种提取数字公式. 数字在文本开始处 这种情况提取数字相对简单些,以下是通用公式: =-LOOKUP ...

  • Excel文本数字混合内容中提取数字,不用公式也能搞定!

    Excel文本数字混合内容中提取数字,不用公式也能搞定!

  • 如何从Excel单元格中提取数字?

    如何从Excel单元格中提取数字?