设为首页收藏本站

嘻皮客娱乐学习网

 找回密码
 中文注册
搜索
打印 上一主题 下一主题
开启左侧

[Excel技巧] 用VBA制作包含超链接的工作表目录

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-10 10:34:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果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.运行代码创建工作表目录列表后,如果又新建工作表或修改工作表名称,请再次运行代码。
回复

使用道具 举报

小黑屋|手机版|嘻皮客网 ( 京ICP备10218169号|京公网安备11010802013797  

GMT+8, 2024-6-16 21:29 , Processed in 0.168881 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表