2012-07-07 162 views
1

我想創建一個VBA宏,這將允許我編輯列中的所有選定超鏈接,並將「文本顯示」更改爲所有相同的單詞。例如,如果這是列:VBA宏 - 超鏈接

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

我想突出柱的這三個要素,改變要顯示的文字爲「谷歌搜索」,這樣的結果會是這樣:

Google Search 
Google Search 
Google Search 

編輯:所以我發現了一個類似於我想要在微軟support site上做的宏,但是我的問題是這個宏指向工作表中的所有超鏈接,而我想選擇一個特定的列來編輯超鏈接。

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
+0

你到底是有什麼問題部分用?在這個網站上,你應該展示你到目前爲止所嘗試的內容,而不僅僅是描述你想要做什麼。如果您有任何現有的代碼,請用此更新您的問題。 – 2012-07-07 02:27:40

回答

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 
+0

感謝DJ,完美的作品! – Emir 2012-07-07 03:00:53