使用宏在Excel中添加链接

时间:2013-11-15 12:03:51

标签: excel vba hyperlink cname

我有一个脚本,它正在为我做正确的事情,但我可以在单个单元格中使用它。

    Sub Macro1()
'
' Macro1 Macro
'
Dim CName As String

CName = ActiveCell
'
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
        "SWFdataEN\DOKUMENTE\C00\04%20TB031\" & CName, TextToDisplay _
        :=CName
End Sub

添加文件名链接到此单元格(CName)并设置TextToDisplay同名(CName)。

如何在列中的下一个单元格中应用此宏(例如我再次点击输入并运行宏)?我尝试使用For-Next循环,但没有很好的结果。脚本始终放置相同的第一个文件名的链接,但TextToDisply是正确的。 请帮忙

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题:

在公共模块中,插入宏:

Sub sofMacro1()
'
  Dim CName As String

  CName = ActiveCell
'
  If (CName <> "") Then
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
      "SWFdataEN\DOKUMENTE\C00\04%20TB031\" & CName, TextToDisplay _
      :=CName
  End If
'
End Sub

然后在当前的工作表中添加一个事件处理程序:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  sofMacro1
End Sub

当您将光标移动到ActiveSheet中的任何位置时,它会向包含文本(非空)的任何单元格添加超链接。

enter image description here