室内设计培训
平面设计培训
部落窝教育
网站首页 >> Excel教程 >> 文章内容

excel提取手机号码的方法

[日期:2012-02-29]   来源:IT部落窝  作者:IT部落窝   阅读:3080[字体: ]
内容提要:文章总结三个不同的excel提取手机号码的案例供大家学习参考。

  excel提取手机号码也是一个比较常见的运用。但是根据数据源的不同,相应的提取手机号码的方法也不尽相同。

excel提取手机号码案例一:

  下图所示A列是一些电话号码,需要提取其中的电话号码,效果如B列所示。

excel提取手机号码

  这个案例可以考察大家对分列命令的掌握程度。

  操作方法是:选择A2:A5区域,单击数据——分列,弹出“文本分列向导”,选择“分隔符号”,单击“下一步”。

提取手机号码

  然后分隔符号勾选“其他”,输入“-”,并勾选“连续分隔符号视为单个处理”。单击“下一步”。

excel提取数字

  选中第一列,“列数据格式”选择“不导入此列”。选中第二列,“列数据格式”选择“文本”(这样才能确保A5中的013678354348正常显示出来)。选中第三列,“列数据格式”选择“不导入此列”。

  然后,将“目标区域”设定为B2单元格,单击“完成”即可。

excel分列

excel提取手机号码案例二:

  下图所示,由于输入的客户资料不规范,导致提取手机号码难度增大很多。A列的电话号码为8位和11位两种情况。分别将号码提取放到BCD列,比如A4单元格有两个号码,就分别放在B4和C4单元格。

excel提取数字

  答案:B2单元格输入公式:=TEXT(LARGE(--TEXT(MID(TEXT(MID($A2&"@",ROW($1:$28),{9,12}),),2,11),"[>2e7]0;!0;!0;!0"),COLUMN(A1)),"0;;"),然后按ctrl+shift+enter键结束,将公式右拉下拉即可提取所有的电话号码。

  此题还可以使用自定义函数来做。

  在工作表标签,单击右键,选择“查看代码”,打开VBE编辑器,单击插入——模块,复制下面的代码,关闭VBE,回到excel工作表,B2单元格输入公式:=提取号码($A2,COLUMN(A2)),右拉下拉,也可以提取所有的电话号码。

Public Function 提取号码(单元格, Optional 第几个 = 1)
Dim wu(1 To 5)
w = 单元格
For c = 1 To Len(w)
If Mid(w, c, 1) Like "[0-9]" = 0 Then w = Application.WorksheetFunction.Replace(w, c, 1, "x")
Next
y = Split(w, "x")
r = 1
For c1 = 0 To UBound(y)
If Len(y(c1)) = 11 Or Len(y(c1)) = 8 Then wu(r) = y(c1): r = r + 1
Next
提取号码 = wu(第几个) & ""
End Function

excel提取手机号码案例三:

  下图所示,手机号码都是连续11位,B1单元格可以使用公式:=MIDB(A1,SEARCHB("?",A1),11)或者=MID(A1,FIND("1",A1,1),11),都可以提取手机号码。

excel手机号码

IT部落窝PS,CDR,213班 分享到: QQ空间 新浪微博 腾讯微博 人人网
photoshop教程
Photoshop教程
平面设计教程
Photoshop教程