当前位置: 主页 > Office办公 > Excel专区 > Excel函数 > excel利用VBA制作包含超链接的工作表目录

excel利用VBA制作包含超链接的工作表目录

  • 2023-03-01
  • 来源/作者: Wps Office教程网/ 菜鸟图库
  • 142 次浏览

如果Excel工作簿中包含许多工作表,可以在一个工作表中列出所有工作表目录和相关说明,以方便在各工作表之间跳转。下面的VBA代码就可以实现这个功能,可以在某个工作表的第一列中产生其他工作表的目录列表及其超链接,单击工作表名称就可以跳转到相应的工作表中,并且可以在其他工作表的A1单元格中设置一个返回目录的超链接,单击可以返回到包含目录的工作表中。

按Alt+F11,打开VBA编辑器,在“工程”窗口中双击要设置目录列表的工作表名称,在右侧代码窗口中输入下面的代码后运行:

Sub CreateSheetsIndex()
Dim wSheet As Worksheet
Dim i As Long
i = 1
With Me
.Columns(i).ClearContents
.Cells(1, 1) = "工作表目录"
.Cells(1, 1).Name = "目录"
End With
For Each wSheet In Worksheets
If wSheet.Name <> Me.Name Then
i = i + 1
With wSheet
.Range("A1").Name = "工作表" & wSheet.Index
.Hyperlinks.Add Anchor:=.Range("A1"), Address:="", SubAddress:="目录", ScreenTip:= _
"跳转到“" & Me.Name & "”工作表", TextToDisplay:="返回目录"
End With
Me.Hyperlinks.Add Anchor:=Me.Cells(i, 1), Address:="", SubAddress:="工作表" & wSheet.Index, _
ScreenTip:="跳转到“" & wSheet.Name & "”工作表", TextToDisplay:=wSheet.Name
End If
Next wSheet
End Sub

说明:

1.由于上述代码会在所有工作表的A1单元格输入链接内容,所以运行代码前务必确保A1单元格为空。

2.如果工作表有密码保护,请先解除保护。

3.运行代码创建工作表目录列表后,如果又新建工作表或修改工作表名称,请再次运行代码。