以Excel2010为例,如何将格式混乱、数量繁多的联系电话中提取手机号码呢? 最好的方法是:用代码提取。

工具/原料

  • 一、 Excel
  • 二、 待提取的联系电话

方法/步骤

  1. 1

    进入Excel界面,将电话放在第一列,A1写上题目或空白。

    2/6

    :同时按下“Alt+F11”,弹出代码窗口

    3/6

    注意上方工具栏,点击“插入”,选择模块

    4/6

    选择后如图示:

    5/6

    复制下列代码,粘贴在代码窗口:

    Sub 提取手机号码()

    arr = Range("a2:a" & Range("a65536").End(3).Row)

    Set reg = CreateObject("vbscript.regexp")

    reg.Pattern = "1[3-9]d{9}(?=D|1[3-9]d{9}|$)"

    reg.Global = True

    For i = 1 To UBound(arr, 1)

    s = arr(i, 1)

    If reg.test(s) Then

    Set mymatch = reg.Execute(s)

    m = 2

    For Each mat In mymatch

    Cells(i + 1, m) = mat

    m = m + 1

    Next

    End If

    Next i

    End Sub

    6/6

    按“F5”,运行代码,返回联系电话所在表格,发觉B列与C列已经将手机号码提取成功。

    注意事项

    • A列的联系电话中间不得有空格
    • A1是预留写标题的,所写数据不会被代码分析
    • 写给百度经验审批的同志,代码2017年是适用的,但是现在已经2019年了,代码第4行作了很轻微的修改,请批准通过。审批百度经验的同志看完这个注意事项,自己删除这第3个事项即可。我都天天早上申请改代码,现在都不批。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。