如何让我的超链接工作? (Excel,VBA)

时间:2013-05-17 17:07:28

标签: excel-vba hyperlink vba excel

我在Excel中的超链接有问题。我试图设置从一个工作表到另一个工作表的超链接,但源和目标单元格需要在循环中每次更改。基本上我想将数据从GROUP 1中的一个单元格移动到GROUP 2中的另一个单元格,然后将GROUP 2中的超链接设置回GROUP 1中的相同单元格。我有200个值,所以我想在循环中执行此操作。我只是不知道我的SubAddress错误了!

这是我的代码.....

感谢您的帮助。

Sub Transfer_and link()
Dim i As Integer
Dim LastRow1, As Long

LastRow1 = Sheets("GROUP 1").Cells(Rows.Count, "A").End(xlUp).Row

a = 14
For i = 5 To LastRow1 Step 2
Sheets("GROUP 2").Cells(a, 2) = Sheets("GROUP 1").Cells(i, 1)
Sheets("GROUP 2").Cells(a, 3) = Sheets("GROUP 1").Cells(i, 9)
Sheets("GROUP 2").Cells(a, 4) = Sheets("GROUP 1").Cells(i, 10)

Sheets("GROUP 1").Activate
Cells(i, 1).Select
Worksheets(2).Hyperlinks.Add Anchor:=Worksheets(2).Cells(a, 2), Address:="", _
SubAddress:=ActiveCell.Address

a = a + 1
Next i

1 个答案:

答案 0 :(得分:4)

ActiveCell.Address仅返回单元格引用。您也需要添加工作表参考。

它类似于:

SubAddress:=ActiveCell.Worksheet.Name & "!" & ActiveCell.Address

如果您的工作表名称可能有像您这样的空间,那么实际上必须是这样:

SubAddress:="'" & ActiveCell.Worksheet.Name & "'!" & ActiveCell.Address