将超链接转换为Excel中的HTML代码

时间:2015-11-06 02:19:07

标签: html excel excel-vba hyperlink vba

我在Excel文件中有一列超链接,我想将它们转换为各自的HTML代码:

<a href="http://www.example.com">Link Name</a>

我找到了仅提取链接(作为文本)的方法,但我需要整个HTML代码作为文本来替换单元格中的超链接。

enter image description here

我已经搜索过并搜索过,但我猜这个答案都没人需要。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

Hyperlinks collection object中抓取.Address和可选.SubAddress实际上是一种相当简单的方法。 .TextToDisplay属性只是单元格的值或文本。

Sub html_anchors()
    Dim a As Range, u As String, l As String
    Dim sANCHOR As String: sANCHOR = "<a href=""%U%"">%L%</a>"

    For Each a In Selection
        With a
            If CBool(.Hyperlinks.Count) Then
                l = .Text
                u = .Hyperlinks(1).Address
                If Right(u, 1) = Chr(47) Then u = Left(u, Len(u) - 1)
                .Hyperlinks(1).Delete
                .Value = Replace(Replace(sANCHOR, "%U%", u), "%L%", l)
            End If
        End With
    Next a
End Sub

选择要处理的所有单元格并运行例程。如果您选择的任何单元格不包含超链接,则会忽略它。