欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

excel函数提取不规则字段(excel提取不规则数据)

数码知识

林烁莹优秀作者

原创内容 来源:小居数码网 时间:2024-08-09 18:48:01 阅读() 收藏:29 分享:42

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有612个文字,大小约为3KB,预计阅读时间2分钟。

今天,有伙伴问了小编这样一个问题,现有如下图所示的源数据,现需要将姓名和电话号码分别从源数据所在列提取出来:

excel提取不规则数据

看到这样的数据,单纯的提取函数肯定是没有办法了,之前分享的提取长度不一的提取函数+FIND的套路也无法使用了,那这样的问题该怎么解决呢?且看小编慢慢道来:

我们只需要在C2单元格内输入公式:=MID(A2,MIN(FIND(ROW($1:$10)-1,A2&"0123456789")),11)

公式输入完成之后,按Ctrl+Shift+回车结束进行尝试,此公式则变为数组公式

函数解释:

1. ROW($2:$14)会得到{1;2;3;4;5;6;7;8;9;10},10个数字,而减去1,就会得到{0;1;2;3;4;5;6;7;8;9},刚好是阿拉伯数字的0-9。A2&”0123456789”就是”林明玉156958498650123456789”

2. FIND(ROW($1:$10)-1,A2&"0123456789")的意思就是在”林明玉156958498650123456789”中,分别找0-9这十个数字在其中的位置。

3. 因为位置序号最小的数字(即0-9中0所在的位置序号),即为号码字段开始的第一个字符。所以我们用MIN函数判断出数字在字符串中最小的位置,即为数字开始的位置,作为MID函数的第二参数。最后再用MID函数提取出11位数字即为需要的电话号码

4. 看到这,有的小伙伴或许会发出属于自己的声音了,为什么要让A2连上数字”0123456789”?。小编告诉你,那是因为不可能所有电话号码都会包含完整的0-9这10位数字,当没有在A2单元格内找到对应数字时,FIND函数就是返回错误值,整个公式就会失去作用。所以为了避免这种情况,我们需要在A2后面脸上数字”0123456789”

当你可以理解上述原理之外,就可以在原公式的基础上对公式进行简化:

=MID(A2,MIN(FIND(ROW($1:$10)-1,A2&5/19)),11)

从上图可以看出,这次 A2 后面连接的就不在是数字 ”0123456789” 了,而是看上去更简单的 5/19 。其实原理和上面一样, 5/19=0.2631578947 ,这个结果刚好包含了数字 0-9 ,和上面的直接连接 0-9 是一样的效果

通过上一步骤,我们就可以提取出完整的电话号码,接下来,就只需要用SUBSTITUTE函数在数据区域中,将提取出来的电话号码替换为空,就可以了

上面就是小居数码小编今天给大家介绍的关于(excel提取不规则数据)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

94%的朋友还想知道的:

(299)个朋友认为回复得到帮助。

部分文章信息来源于以及网友投稿,转载请说明出处。

本文标题:excel函数提取不规则字段(excel提取不规则数据):http://sjzlt.cn/shuma/154156.html

猜你喜欢