2015-10-13 129 views
1

我有很多超链接,我想为它们分配一个宏,Worksheet_FollowHyperlink只捕获插入的超链接,但不捕获HYPERLINK()函数。所以我希望我插入的超链接没有提到,所以当我按下它们时什么都没有发生。或者我希望他们引用他们自己。但是当我将一个复制到另一个单元格时,它仍然指向其父单元格。所以我必须编辑一个新的单元,以便引用它的新单元。而且我也有超链接的编辑可以复制和编辑。我需要这个,因为我不想让超链接跳到父超链接的单元格。excel超链接什么都没有

在此先感谢

+0

您可以使用'#rc'作为超链接地址 - 无需隐藏工作表。 –

+0

哦,谢谢你lori_m。作品完美。但它意味着什么#rc? –

+0

'#'表示文档中的引用,任何返回引用的公式都可以使用'A1'或'r1c1'表示法。这里'rc'表示'r1c1'中的这个单元格。在超链接对话框中输入'#indirect(rc)'会带你进入超链接单元格输入的文本,例如'Sheet1!A1' –

回答

3

你会好起来的使用HYPERLINK()函数。你可以用它为你想要像这样的内容:

=HYPERLINK("#HyperlinkClick()", "Text you want to Display") 

通知的开头。 这是重要的

现在创建一个名为HyperlinkClick功能:

Function HyperlinkClick() 

    Set HyperlinkClick = Selection 
    'Do whatever you like here... 
    MsgBox "You clicked on cell " & Selection.Address(0, 0) 

End Function 

就是这样。

+0

好主意!你刚刚救了我的屁股。 Thanx –

+0

@DenisVakula欢迎您。 –

+0

对不起Excel Hero,这似乎是错误的方式。 Worksheet_FollowHyperlink仍然不处理我/你的超链接。你有什么想法吗? –

0

选择一组单元格,然后运行:

Sub HyperAdder() 
    For Each r In Selection 
     ActiveSheet.Hyperlinks.Add Anchor:=r, Address:="", SubAddress:=r.Parent.Name & "!" & r.Address(0, 0), TextToDisplay:="myself" 
    Next r 
End Sub 
+0

thanx,它的工作原理,但我收到“引用无效”,每次我点击超链接 –

0

我刚刚建立了一个解决方案。如果我将插入的超链接引用到其他工作表中的某个单元格,然后将其隐藏起来(xlSheetVeryHidden),它就可以完美工作。现在我的超链接指向梦幻岛,宏也捕捉它们。谢谢大家的耐心等待。