玩转Excel数字提取!唉~就是玩!

杂乱文本中不管是提取全部数值,还是按提交提取,对于新手来说都是一个难题,今天我们就来使用一个函数搞定这些难题,顺便看看传统解决难度有多大!

案例01 | 提取单个数值

传统方法:

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

小白估计一时半会很难学会,这里涉及到MIDB截取函数、SEARCHB查找位置函数、LEN判断长度函数

相关函数学习:

新方法:简单到没朋友!
如果上面的案例,你觉得就这样,那么下面更多的案例,会让你感受到这个函数的强大之处!
案例02 |  提取最左边的文本
传统方法:
=-LOOKUP(1,-LEFT(A2,ROW($1:$99)))
同样学会上面的方法需要掌握三个函数:
1、LOOKUP:轻松学LOOKUP函数,10大经典案例!
2、LEFT:学 习 Excel 中 的 文 本 函数!(上 篇)
3、ROW:简单谈谈不简单的ROW和COLUMN两兄弟!
是不是对于新手,立马想解决问题有点困难,对于大部分同学,我只想解决问题,不要跟我提什么函数学习什么!
我也是懒人,我懂你们!
新方法:这次只是多了两个逗号,其实是使用默认值!
值得说的是依旧简单,这个函数设计就是为了获取数字!
案例03 | 提取分隔符的最后一段文本
传统方法
=VLOOKUP("-*",RIGHT(A2,ROW($1:$10)+{1,0}),2,0)
方法虽然传统,但是看上去怎么跟我学的VLOOKUP函数不一样?我们玩的不是一个游戏吗?其实这里是在重构第二参数!
关于VLOOKUP的文章,小编写的太多了!
1、我们玩的是同一个VLOOKUP吗?
2、视频详解VLOOKUP如何实现1对多查找!
3、对!我就是喜欢使用VLOOKUP
4、「函数009」- 学不会的VLOOKUP,列数太多我不想12345!
5、VLOOKUP反向查找中的IF({1,0}是什么意思?
总共有8页之多,感兴趣,关注后,点击头像,然后点击搜索图标(放大镜),输入关键查找!
不管怎么样,还是要学习一阵子的,我们来看看今天的新方法!
新方法
公式大概的意思是找到数值前面是-的所有数值,然后提取第二段
怎么样?是不是依据很简单!
你可能想问,提取全部分段怎么做呢?下面就来说!
案例04 |  按指定分隔符提取全部分段内容
传统方法:这里利用的是Xpath语法
=INDEX( FILTERXML( SUBSTITUTE("<ul><li>"&$A2&"</li></ul>","-","</li><li>"),     "//li"),COLUMN(A1))
当然还有这样也行,但是这里水痕深,把你们把握不住!
=TRIM( MID( SUBSTITUTE($A2,"-",REPT(" ",99)), 99*(COLUMN(A1)-1)+1, 99   ) )
新手看了,都TM的太难,弃疗!您等等,这不还有新方法嘛!
新方法:是不是依据比较简单呢?
=GETNUMS("-"&$A2,"-",1,COLUMN(A1))
上面想必大家已经见识到了新方法的厉害支出,但是还远远没有达到我设计他的初衷,我要他能解决大部分的数值提取难题!
所以再来看稍微复杂点的!
案例05 | 综合提取
> 提取其中的全部数值
怎么样?复杂到你怀疑人生?!
=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))),"")
新方法
GETNUMS目前就是提取全部数值,结果是一个数值,通过第四参数控制提取第几个!
> 提取金额(元前面的数值)
直接跪了,完全懵逼属于正常现象!新手选择了地狱难度!
=IFERROR(-LOOKUP(1,-RIGHT(LEFT($A2,FIND("@",SUBSTITUTE($A2,"元","@",COLUMN(A1)))-1),ROW($1:$10))),"")
新方法:
除了容错函数,其实核心依旧很简单!这里默认是后带元的数值,如果先前面特定内容提取,请看下一个案例!
=IFERROR(GETNUMS($A2,"元",,COLUMN(A1)),"")
> 提取分号后的数值
最后一个传统方法就不写了,依旧复杂!~
看看新方法吧!
最后!我们总结一下GETNUMS函数:
最后的最后! 好像忘记点啥…… 祝大家520节日快乐!
北京时间:2021年5月20日00:49:44
附件下载:
(0)

相关推荐