Excel批量提取超链接中的地址

| | Comments (0)



作为站长的我们,可能有时候需要从网络上拷贝一些东西,而且这些文本都带有链接,如果这些链接有用,也需要整理,比如采集的时候,您可能需要手动得到网址或者得到大量的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

Leave a comment

Archives

Ads by google

Pages

Powered by Movable Type 4.24-en

About this Entry

This page contains a single entry by 单点日志 published on October 26, 2010 9:37 AM.

DEDE中channelartlist自增参数autoindex无效可以用global.itemindex代替 was the previous entry in this blog.

dedecms 独立模型上下篇功能的实现 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.