超链接不会在VBA中激活宏

时间:2015-07-31 15:19:30

标签: vba excel-vba hyperlink excel

我试图获取一个激活宏的超链接。我无法使用固定的目标地址,因为我有几个链接;目标是创建可执行步骤的可单击历史记录。所以我需要创建一个后退按钮。

我已经尝试过了:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    If Target.Range.Address = "$A$4" Then 
       MsgBox "This isn't what I had in mind"
    Else
       MsgBox "MACRO!"

        Exit Sub
    End If 

End Sub

有人有想法吗?

如果我点击超链接,它只会显示该单元格的代码。 代码位于Worksheet模块中。

总体思路:

我正在制作一个基于几个步骤(总共40个)计算的工作簿。例如:如果sum大于9,请转到步骤4,否则转到步骤21.

但是因为我们可以制造所有人类和错误,我希望excel能够列出已经采取的所有步骤及其答案。我想让这个列表中的步骤可以点击,所以当他们点击该步骤时,可以返回到该步骤并从那里继续。所以有很多超链接:)

4 个答案:

答案 0 :(得分:0)

为什么不使用具有相同设置的Worksheet_SelectionChange?

答案 1 :(得分:0)

这似乎对我有用,我已将您的代码复制并粘贴到" Sheet1"一个新的Excel工作簿的模块,并在' Sheet1'上添加一个超链接。单击选项卡。 MsgBox按预期弹出。

我相信宏只有在代码位于用户单击链接的工作表的Sheet模块中时才有效。

答案 2 :(得分:0)

如果您需要“超链接返回”按钮,则可以随时将其添加到快速访问工具栏:

enter image description here

答案 3 :(得分:0)

如果你使用= HYPERLINK(),这个宏不起作用,你必须通过'rightclick',超链接转换它。