分享

从混合字符串中提取手机号码(函数篇)

 新华书店好书榜 2017-03-16

问题:如何从混合字符串中提取11位数手机号码,座机号码不显示呢?

模拟数据如下:

 


函数公式处理:

 


公式:

B2=TEXT(MAX(IFERROR(--MID(A2,ROW($1:$99),11),'')),'[>'&10^10&']0;;;'),数组公式,按Ctrl+Shift+Enter三键结束。

或B2=TEXT(-MIN(IFERROR(-MID(A2,ROW($1:$99),11),'')),'[>'&10^10&']0;;;'),数组公式,按Ctrl+Shift+Enter三键结束。

 

公式解析:

公式原理差不多,一个是用两个负号转换找最大值,另一个是用一个负号转换找最小值再用一个负号转成正数,以第二条公式找最小值为例解析:

 

1、先用函数MID依次提取11位数,MID(A2,ROW($1:$99),11)部分得到结果如下图:

 


2、用负号(-)将纯数字转换成负数,其他转换成错误值,如下:

 


3、用函数IFERROR容错,将错误值转换成空,即IFERROR(公式,'')格式

 


4、用函数MIN提取最小值,得到-18924567311

 

5、再用负号(-)将函数MIN提取到的最小值-18924567311转换成正数18924567311,即要提取的11位数手机号码

 

6、最后一步,将不是11位数手机号码的不显示,这就有请我们的百变神君TEXT,格式为'[>'&10^10&']0;;;'

 

如果大家有需要知道VBA解法的,就请留言,将由合伙人猫哥为大家提供VBA解法,祝您学得开心!


很多人都说每个函数我都会用,就是不会嵌套,其实函数的嵌套也是由单个的函数公式一个个套进去的,只要自己的解题思路清晰,先一步一步分析做出来,最后再合成就是了。

 

寄语:成功没有捷径,只有一步一个脚印才能达到理想的状态!

 

广告一下要学好函数来找我们报名,函数课程马上开始上课了。

函数七天199RMB;现在报名有优惠

函数中级600RMB;现在报名有优惠

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多