VBA检索超链接目标工作表?

我正在尝试从单元格中的超链接检索工作表参考位置

以下似乎不起作用,因为test不会返回任何东西,即使G8指向单元格A19 Sheet: KO

 test = Range("G8").Hyperlinks(3).Address 

现在,如果我运行以下:

 For Each hl In Sheets("LIST").Hyperlinks MsgBox "Range " & hl.Range.Address & " addr " & _ hl.Address & " text " & hl.TextToDisplay Next hl 

它循环,find正确的地址,但我似乎无法弄清楚如何检测它指向的工作表。 此外,这个循环有点乱,因为在这种情况下,一旦它find了第一个也是唯一的超链接,它就会出错。 G8并不总是具体的。 我想我可以只是抛出一个if语句并提前退出for循环。

无论如何,我无法find任何地方在stackoverflow,谷歌,微软“超链接”文档的方式来获取工作表名称。

见下图示例: 样本图片

SubAddress是你想要的:

 Sub Test() Dim hl As Hyperlink, r As Range Set hl = ActiveSheet.Hyperlinks(1) Set r = Application.Evaluate(hl.SubAddress) Debug.Print "Sheet: '" & r.Parent.Name & "'", "Range:" & r.Address() End Sub