我正在尝试在Excel中生成超链接列表,并将它们动态链接到另一个工作表中的另一个单元格。有人可以解释我需要如何格式化参考?目前,它看起来像这样:
'p2r is one sheet
'sh is another
'Subaddress is currently linking to the correct location, wrong sheet.
'(It's linking to [p2r]'s cells, not [sh]'s cells)
p2r.Hyperlinks.Add_
Anchor:=p2r.Cells(p2rIndex, 1), _
Address:="", _
SubAddress:=sh.Cells(round2, 2).Address, _
TextToDisplay:=PrevRow
感谢您的帮助!我见过其他人使用的格式如下:Sheet!A1,但当我尝试类似的东西时:
SubAddress:=sh & "!" & Cells(round2, 2).Address
我没有任何有价值的结果。
答案 0 :(得分:0)
您可以使用两种修改来使代码正常工作:
您可以使用
SubAddress:="'" & Replace(sh.Name, "'", "''") & "'!" & Cells(round2, 2).Address
为了生成SubAddress:="'Sheet name'!$A$1"
形式的内容。
(处理'
的公式中的位是允许它在工作表名称中有空格等时仍可使用。如果你知道不会发生,例如因为你定义了工作表名称,其他任何人都不会更改它们,您可以将其简化为SubAddress:=sh.Name & "!" & Cells(round2, 2).Address
)
您可以使用
SubAddress:=sh.Cells(round2, 2).Address(External:=True)
会产生SubAddress:="'[Book1.xlsx]Sheet name'!$A$1"