内容提要:本文的VBA提取Excel数据,分享了编写一段代码,实现一键提取地址和电话。
Excel表格提取电话和提取地址,要分数据情况,确定使用什么方法。
今天的案例文件,是小伙伴询问的一个工作问题,询问excel表格怎么提取地址以及提取电话。
下面的Excel表格,A列有地址和电话号码。

如果数据源规范,高版本的Excel,可以使用快速填充进行提取,主要是A3单元格电话前面,还有3个数字101,所以快速填充提取就会出现错误。
但针对上面的案例,则无能为力,所以给大家分享vba提取excel数据。
编写一段VBA代码,一键提取地址和电话,分别放在B列和C列。

详细完整的Excel操作步骤如下:
单击“开发工具——Visual Basic”,打开VBE编辑器,插入——模块,输入以下代码:
Sub test()
Dim ar, i%, br() As String
Dim reg As Object
Set reg = CreateObject("vbscript.regexp")
reg.Pattern = "\d{4}-\d+|\d{11}$"
ar = Range("a1", Cells(Rows.Count, 1).End(xlUp))
ReDim br(1 To UBound(ar), 1 To 2)
For i = 1 To UBound(ar)
br(i, 2) = reg.Execute(ar(i, 1))(0)
br(i, 1) = Replace(ar(i, 1), br(i, 2), "")
Next i
[b:c].Clear
[b1].Resize(UBound(br), 2) = br
End Sub

返回Excel界面,插入一个按钮,右键指定宏,关联上面的代码,运行即可。
如果你在学习或者工作中遇到任何不懂的Excel问题,都可以在咱们微信群交流学习。
微信扫下面二维码加入Excel交流学习群。

微信扫码加群
