Excel批量提取超链接中的地址
作为站长的我们,可能有时候需要从网络上拷贝一些东西,而且这些文本都带有链接,如果这些链接有用,也需要整理,比如采集的时候,您可能需要手动得到网址或者得到大量的email地址,excel中没有现成的函数可以使用,不过我们可以利用excel vba 自己创建一个专属的自定义函数来达到我们的目的,代码很简单
如果Excel表格单元格中包含有许多用文本形式显示的超链接,要逐一查看所有超链接的地址,用手工的方法显得太繁琐,我们可以用自定义函数来批量提取这些超链接中的地址,将下列代码插入到标准模块中:
Function GetURL(rng As Range) As String
On Error Resume Next
GetURL = rng.Hyperlinks(1).Address
End Function
使用方法是在单元格中输入公式,假如单元格D6中含有超链接:
=geturl(D6)
使函数在以后任何一个工作薄中都可以使用,需做以下操作:
自定义的函数只能在当前工作薄使用,如果该函数需要在其它工作薄中使用,则选择菜单"文件→另存为"命令,打开"另存为"对话框,选择保存类型为"Mircosoft Excel加载宏",然后输入一个文件名,如"TAX"单击"确定"后文件就被保存为加载宏。然后选择菜单"工具→加载宏"命令,打开"加载宏"对话框,勾选"可用加载宏"列表框中的"Tax"复选框即可,单击"确定"按钮后,就可以在本机上的所有工作薄中使用该自定义函数了。
换电脑了,重复以上操作。
方法二、(不推荐)
还可以使用下面的代码将工作表中的所有超链接地址全部显示出来,运行代码前先备份工作簿,因为它会在含有超链接的单元格的右侧显示其地址,有可能会破坏工作表结构。
Sub ExtractHL()
Dim HL As Hyperlink
For Each HL In ActiveSheet.Hyperlinks
HL.Range.Offset(0, 1).Value = HL.Address
Next
End Sub
单点日志:http://spoint.babyshoot.cn
