Excel VBA添加形状的超链接以链接到另一个工作表

时间:2015-07-04 20:50:44

标签: excel vba excel-vba hyperlink

我有一个宏,可以在工作簿的前面创建摘要表。在工作簿中的工作表之后创建并标记形状,然后将超链接添加到形状以重定向到这些工作表,但是,当我记录宏来执行此操作时,生成的代码为:

ActiveSheet.Shapes.Range(Array("Rounded Rectangle 1")).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection.ShapeRange.Item(1), Address:=""

在录制宏工作时在excel中手动创建的超链接工作正常,当将鼠标悬停在它们上方时,显示文件路径和“ - Sheet!A1”,但它们实际上似乎并未将链接位置添加到宏的地址部分。有没有人知道应该在该地址部分中链接到工作表的代码?

1 个答案:

答案 0 :(得分:5)

在这种情况下,宏录制器不记录实际发生的情况。您要查找的房产是SubAddress。 <{1}}已在您的代码中正确设置。

从形状创建超链接而不选择
如果可能,您希望避免在代码中选择内容,在这种情况下肯定是。创建一个形状变量并将其设置为要修改的形状,然后将超链接添加到形状所在的工作表中。请注意,您还可以设置屏幕提示的文本。

在下面的示例中,我想要修改的形状在Sheet 6上,并且超链接到Sheet 4上的范围。

Address