Excel教程

Excel函数
Excel技巧

【EXCEL教程】全自动超链接(工作表事件目录法),牛

当前位置:网站首页 > Excel教程

【EXCEL教程】全自动超链接(工作表事件目录法),牛

* 来源: 【office教程学习】 * 作者: 【EXCEL教程】 * 发表时间: 2020-03-14 20:46:29 * 浏览: 116


在工作中我们常常遇到在一个工作簿中工作表太多,不好管理的情况,这个时候我们就会想要是有个目录,并且可以超链接一点就过去就好了。



因此以下功能代码孕育而生。


Private Sub Worksheet_Activate()

   On Error Resume Next

   Sheets("目录").Range("A1") = "目录"

   k = 1

   For Each sh In Sheets

       If sh.Name <> "目录" Then

           k = k + 1

           Sheets("目录").Cells(k, 1) = sh.Name

       End If

   Next

   Sheets("目录").Range("A:A").EntireColumn.AutoFit

   Sheets("目录").Range("A:A").EntireColumn.HorizontalAlignment = xlCenter

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

   Dim sht As Worksheet

   On Error Resume Next

   If Target.Address = "$D$1" Then

       Call ShowSheet

       Exit Sub

   End If

   If Target.Row < 2 Or Target.Column > 1 Then Exit Sub

   For Each sht In Worksheets

       If sht.Name <> "目录" Then sht.Visible = xlSheetVeryHidden

   Next

   Sheets(Target.Value).Visible = xlSheetVisible

   Sheets(Target.Value).Select

End Sub

Sub ShowSheet()

   Dim sh As Worksheet

   For Each sh In Sheets

       sh.Visible = -1

   Next

End Sub


代码功能讲解:


目录工作表激活事件,目的提取工作表名。



单元格选择改变事件,也就是我们单击不同的单元格就会触发事件,目的是跳转对应工作表,以及隐藏其他无关的工作表。


显示所有工作表


代码如用法:

工作薄中新建一工作表取名为目录,

右键目录工作表

单击查看代码


复制上面的代码粘贴上去


特别提醒注意:工作簿另存为后缀名.xlsm,启用宏。


用法如图:

当我们选中目录表时,就会自动把所有的工作表名提取到A列。

当我们选中对应A列的表名就会跳转到对应的表并自动隐藏其他的表。

当我们新增表,再回到目录表时会自动把新增的工作表名提取到A列中。



强不强大!

喜不喜欢!