Excel提取数值套路大全!

今天我们给大家总结一下,Excel中提取数值的各种套路和方法!

我们先从简单常用的开始吧!

案例1 |  文本中只有一组数值的提取

=--MIDB(A2,SEARCHB("?",A2),LEN(A2)*2-LENB(A2))

概述:

Excel文本类函数,基本都有两种模式一种是字符(末尾无B),一种按字节(末尾有B),中文汉字一般是双字节,数字字母单字节,所以本案例中,2*LEN-LENB正好是数值的长度!
案例02 | 提取左边数值
=-LOOKUP(1,-LEFT(A2,ROW($1:$99)))

概述:

LEFT第二参数使用数组ROW(1:99),比如依次从截取1位到99位,然后我们使用 符号转成数值,文本会变成错误值!LOOKUP,要求第二参数是升序排序,所以会返回最后一个小于等于1的数值!
案例03 | 提取最后一段内容
=VLOOKUP("-*",RIGHT(A2,ROW($1:$10)+{1,0}),2,0)

概述:

大部分同学应该没有见过VLOOKUP这种用法吧,其实核心在重构第二参数!
ROW($1:$10)+{1,0},是一个数组,相当于我们每次都截取1-10的同时,再多截取一位,看一下下面的图就明白其中的奥义了!
案例04 | 提取全部数值
▼公式有点复杂,尽量理解吧
=IFNA(-LOOKUP(,-MID($A2,SMALL(MODE.MULT(ROW($1:99)-1+ISERR(-(MID($A2,ROW($1:99)-1,1)&0))),COLUMN(A1)),ROW($1:9))),"")

概述:

这里的核心思路在于文本和数值交界点的判断,也就是每个数组的开始位置
这个交界点有一个特点就是,前面的肯定不是数值,后面的肯定是数值
那么如果是数值我们用0表示,不是数值的用1表示!
具体可以看一下下面的拆解图
MODE.MULT 是找出一组数组出现频次高的数据!也是常用的套路!
案例05 | 提取全部数值并相加
▼公式有点复杂,尽量理解吧=SUM(IFERROR(MID(TEXT(MID(SUBSTITUTE(A2,"元",0&10^-9),ROW($1:$99),14),),2,14)%,))

概述:

这里用的思路有两个:
1、第一个是把特定的字符替换成一个比较长的小数追加在原本的数值上,比如这里的10^-9 = 0.000000001!
2、Text格式化,参数为空,会把纯数值格式化为空,剩下的文本保留下来,然后我们从第二位截取,因为0& 加上0.000001中多了两个0,所以需要把提取出来的数据缩小100倍,直接%即可!但是不适合小数情况,所以第2个结果错误
本文由“壹伴编辑器”提供技术支持
OK!今天的就先到这里,有时间我们通过视频再详解分析其中的套路!
如果您看到了这里,因为是一位和小编一样爱学习和分享的老铁,记得
给小编 【
(0)

相关推荐