UDF 在工作簿中创建指向位置的超链接
Posted
技术标签:
【中文标题】UDF 在工作簿中创建指向位置的超链接【英文标题】:UDF to Create Hyperlink to Location in Workbook 【发布时间】:2018-10-12 16:42:39 【问题描述】:我正在为 Excel UDF 寻找 VBA,该 UDF 创建指向活动工作簿的指定单元格(“MyCell”)的超链接。 MyCell 可以位于包含 UDF 的工作簿的任何工作表上。到目前为止,我看到的所有示例都太复杂了,无法正确编辑代码。
Function MyHyperLink(MyCell)
'Code?
End Function
提前谢谢你。
【问题讨论】:
但是如果它是一个UDF,它怎么会是“可点击的”呢?你能否解释一下为什么HYPERLINK
功能不够好?
哎呀@BigBen,我忘记了它的存在。看起来它完全符合 OP 的要求。现在我对我的回答有点尴尬。我想这就是我们保持敏锐的方式。哈哈。
【参考方案1】:
您想要做的事情有两个部分。一是获取超链接目标的地址。另一个是提供要放置超链接的单元格。据我所知,您无法创建将在单元格中返回超链接的 UDF。所以,这就是我要做的。
Sub MakeHyperLink(linkLocation as Range, linkTarget as Range, displayText as String)
Dim targetAddress as String
Dim locationSheet as Worksheet
' Get a string form of the hyperlink address
targetAddress = "'" & linkTarget.Parent.Name & "'!" & linkTarget.Address
' Get the sheet where the link will go.
Set locationSheet linkLocation.Parent;
' Add the hyperlink
locationSheet.Hyperlinks.Add Anchor:=linkLocation, _
Address:="", _
subAddress:=targetAddress, _
TextToDisplay:=displayText
End Sub
【讨论】:
...或使用=HYPERLINK()
BigBen 对您的 OP 的评论中建议的功能。
我有一个 UDF 解决方案,它使用 HYPERLINKI() 和上面宏的第一部分。我只是认为一个 UDF 看起来比在本机函数中使用 UDF 更干净。如果不麻烦创建 UDF,不妨一口气完成所有工作。如果 HYPERLINK() 是可调用的,那就太酷了。以上是关于UDF 在工作簿中创建指向位置的超链接的主要内容,如果未能解决你的问题,请参考以下文章
WPS表格出现“此工作簿包含其他数据的链接,是不是更新这些链接”怎么解决