如何将第 1 列中的字符串作为名称分配给 excel VBA 中所有行的第 2 列中的超链接?
How to assign a string in column 1 as name to a hyperlink in column 2 across all rows in excel VBA?
我有一个 excel 电子表格,如下所示:
输入:
Link Name Hyperlink Other Data
Group 1 google.de/1 1
Group 1 google.de/2 2
Group 2 google.de/3 3
Group 2 google.de/4 4
Group 3 google.de/5 5
我需要一个 VBA sub,它将 Link Name
中的所有字符串作为名称分配给 Hyperlink
中的 link:
期望输出:
Link Name Hyperlink Other Data
Group 1 Group 1 1 # Hyperlink: Underlined, blue
Group 1 Group 1 2 # Hyperlink: Underlined, blue
Group 2 Group 2 3 # Hyperlink: Underlined, blue
Group 2 Group 2 4 # Hyperlink: Underlined, blue
Group 3 Group 3 5 # Hyperlink: Underlined, blue
Hyperlink
现在应该可以点击并按照 Link Name
中的定义进行标记。我当前的方法似乎没有遍历 Link Name
列:
当前方法:
Sub rename_links()
For Each h In ActiveSheet.Hyperlinks // Select hyperlink
h.TextToDisplay = _
Replace(h.TextToDisplay, h.TextToDisplay, ActiveCell.Offset(0, -1).Value)
Next
End Sub
当前输出:
Link Name Hyperlink Other Data
Group 1 Link Name 1
Group 1 Link Name 2
Group 2 Link Name 3
Group 2 Link Name 4
Group 3 Link Name 5
我相信这是因为 ActiveCell.Offset(0, -1).Value
没有受到 Next
的影响。
如何将第 1 列中的字符串作为名称分配给 excel VBA 中所有行的第 2 列中的 hyperlink?
您可以使用第 2 列中的一个简单公式来实现:
=HYPERLINK("your link address here", A1)
其中使用 A1 的文本作为 link 名称。
或者用VBA写那个公式:
Range("B1:B10").Formula = "=HYPERLINK(""your link address here"", A1)"
我有一个 excel 电子表格,如下所示:
输入:
Link Name Hyperlink Other Data
Group 1 google.de/1 1
Group 1 google.de/2 2
Group 2 google.de/3 3
Group 2 google.de/4 4
Group 3 google.de/5 5
我需要一个 VBA sub,它将 Link Name
中的所有字符串作为名称分配给 Hyperlink
中的 link:
期望输出:
Link Name Hyperlink Other Data
Group 1 Group 1 1 # Hyperlink: Underlined, blue
Group 1 Group 1 2 # Hyperlink: Underlined, blue
Group 2 Group 2 3 # Hyperlink: Underlined, blue
Group 2 Group 2 4 # Hyperlink: Underlined, blue
Group 3 Group 3 5 # Hyperlink: Underlined, blue
Hyperlink
现在应该可以点击并按照 Link Name
中的定义进行标记。我当前的方法似乎没有遍历 Link Name
列:
当前方法:
Sub rename_links()
For Each h In ActiveSheet.Hyperlinks // Select hyperlink
h.TextToDisplay = _
Replace(h.TextToDisplay, h.TextToDisplay, ActiveCell.Offset(0, -1).Value)
Next
End Sub
当前输出:
Link Name Hyperlink Other Data
Group 1 Link Name 1
Group 1 Link Name 2
Group 2 Link Name 3
Group 2 Link Name 4
Group 3 Link Name 5
我相信这是因为 ActiveCell.Offset(0, -1).Value
没有受到 Next
的影响。
如何将第 1 列中的字符串作为名称分配给 excel VBA 中所有行的第 2 列中的 hyperlink?
您可以使用第 2 列中的一个简单公式来实现:
=HYPERLINK("your link address here", A1)
其中使用 A1 的文本作为 link 名称。
或者用VBA写那个公式:
Range("B1:B10").Formula = "=HYPERLINK(""your link address here"", A1)"