我的问题可能是微不足道的,但我在很多例子中都搜索过这个问题,而且在我的案例中没有找到可行的东西。
我有一张工作表(wsProjects),我希望在其中有超链接的单元格转到其他工作表。 例如:我在wsProjects表中,单击名为RESOURCES的单元格,它将我带到wsResources表。
这是我的代码:
Set wb = ThisWorkbook
Set wsResources = Sheets("Resources")
Set wsProjects = Sheets("Projects")
Set wsResourcesProjects = Sheets("ResourcesProjects")
wb.Activate
wsProjects.Activate
iProjectsProjectColumn = 2
iProjectsProjectFirstRow = 8
iProjectsProjectLastRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, iProjectsProjectColumn).End(xlUp).Row ' --- set last row
Set rProjectsEmptyProjectCell = Cells(iProjectsProjectLastRow + 1, iProjectsProjectColumn) ' --- set first empty cell
rProjectsEmptyProjectCell.Offset(2, 0).Font.Bold = False
rProjectsEmptyProjectCell.Offset(2, 0).Font.Color = RGB(73, 69, 41)
rProjectsEmptyProjectCell.Offset(2, 0).Font.Name = "Calibri"
rProjectsEmptyProjectCell.Offset(2, 0).Font.Size = 11
rProjectsEmptyProjectCell.Offset(2, 0).FormulaR1C1 = "RESOURCES"
rProjectsEmptyProjectCell.Offset(2, 0).HorizontalAlignment = xlCenter
rProjectsEmptyProjectCell.Offset(2, 0).VerticalAlignment = xlCenter
rProjectsEmptyProjectCell.Offset(2, 0).Rows.RowHeight = 20
wsProjects.Hyperlinks.Add Anchor:=rProjectsEmptyProjectCell.Offset(2, 0), Address:=wsResources
错误:输入不匹配
我不明白什么应该设置为锚和什么地址。我试过在网上创建了很多版本,但没有任何效果。
提前感谢您的帮助
答案 0 :(得分:1)
如果超链接的地址应重定向到同一工作簿中的位置,则不是这样的方式:
wsProjects.Hyperlinks.Add Anchor:=rProjectsEmptyProjectCell.Offset(2, 0), Address:=wsResources
首先,参数Address
是String类型,您不能传递Worksheet
类型的对象。
此外,如果您希望将超链接指向同一工作表中的位置,则需要将属性Address
留空,并指定属性SubAddress
。
以下是修改此行的方法:
wsProjects.Hyperlinks.Add Anchor:=rProjectsEmptyProjectCell.Offset(2, 0), _
Address:="", SubAddress:=wsResources.Name & "!A1"
我假设您要重定向到单元格A1
。如果您想要使用其他单元格,只需将"!A1"
更改为您需要的任何单元格。