1

我想创建一个 VBA 宏,它允许我编辑列中所有选定的超链接,并将“要显示的文本”更改为所有的同一个词。例如,如果这是列:

www.google.com/search=cars
www.google.com/search=houses
www.google.com/search=cities

我想突出显示该列的这三个元素并将要显示的文本更改为“Google 搜索”,以便结果如下:

Google Search
Google Search
Google Search

编辑:所以我在微软支持网站上找到了一个类似于我想要做的宏,但我的问题是这个宏针对工作表中的所有超链接,而我想选择一个特定的列来编辑超链接。

Sub HyperLinkChange()
   Dim oldtext As String
   Dim newtext As String
   Dim h As Hyperlink

oldtext = "http://www.microsoft.com/" newtext = "http://www.msn.com/" For Each h In ActiveSheet.Hyperlinks x = InStr(1, h.Address, oldtext) If x > 0 Then If h.TextToDisplay = h.Address Then h.TextToDisplay = newtext End If h.Address = Application.WorksheetFunction. _ Substitute(h.Address, oldtext, newtext) End If Next End Sub
4

1 回答 1

1

这适用于当前选择:

Sub SetLinkText()

Dim LinkText As String
Dim h As Hyperlink

    LinkText = InputBox("Enter link text")

    If LinkText = "" Then Exit Sub

    For Each h In Selection.Hyperlinks
        h.TextToDisplay = LinkText
    Next

End Sub
于 2012-07-07T02:47:37.047 回答