UDF在工作簿中创建到位置的超链接

时间:2018-10-12 16:42:39

标签: excel-vba hyperlink user-defined-functions

我正在为Excel UDF寻找VBA,该Excel UDF创建到活动工作簿的指定单元格(“ MyCell”)的超链接。 MyCell可以在包含UDF的工作簿的任何工作表上。到目前为止,我所看到的所有示例都太复杂了,以至于我无法正确地编辑代码。

Function MyHyperLink(MyCell)

'Code?

End Function

谢谢。

1 个答案:

答案 0 :(得分:0)

您想做的事情分为两部分。一种是获取超链接目标的地址。另一个是提供要放置超链接的单元格。据我所知,您无法创建将在单元格中返回超链接的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