我有两个工作簿Workbook1和Workbook2。在我的Workbook2中的一个工作表中,列A包含单元格引用,而列E包含工作簿1的工作表名称。
我基本上想要在Workbook2的B列的使用范围上创建超链接,这样当我点击B列的任何单元格时,它应该带我到Workbook1
目前我在下面提到的行上收到错误"运行时错误5:
sh.Hyperlinks.Add Anchor:=Cell, Address:="", SubAddress:="'" & "C:\Users\ Workbook1.xlsx" & "'" & Cells("E:E").Value & "'!" & Cell.Address
总代码:
sub hyerlinkworkb ()
Set sh = ActiveWorkbook.Sheets("Summary Sheet")
Set sw = Workbooks("Workbook1.xlsx")
lr = sh.Range("A" & Rows.Count).End(xlUp).Row
Set Rng = sh.Range("B2:B" & lr)
For Each Cell In Rng
sh.Hyperlinks.Add Anchor:=Cell, Address:="", SubAddress:="'" & "C:\Users\workbook1.xlsx" & "'" & Cells("E:E").Value & "'!" & Cell.Address
Next
end sub
答案 0 :(得分:1)
我认为有两件事是错的。
首先,它不喜欢的语法是cells("E:E").value
我认为你需要一次指定一个单元格值。
其次,工作簿地址应该在地址下,然后是子地址下的工作表和单元格引用。
沿着这些方向尝试一些事情。我已经测试了它似乎可以使用一些虚拟日期
Sub hyerlinkworkb()
Set sh = ActiveWorkbook.Sheets("Summary Sheet")
Set sw = Workbooks("Workbook1.xlsx")
lr = sh.Range("A" & Rows.Count).End(xlUp).Row
Set Rng = sh.Range("B2:B" & lr)
i = 1
For Each cell In Rng
sh.Hyperlinks.Add Anchor:=cell, Address:="C:\Users\workbook1.xlsx", SubAddress:="'" & Range("E" & i).Value & "'!" & cell.value
i = i + 1
Next
End Sub