为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表!
Excel情报局
Excel职场联盟
当Excel中的工作表数量很多时,有一个带链接的目录真是太方便了,如下图所示,当我们选中“目录”表中对应A列的表名就会跳转到对应的表并自动隐藏其他的表。
这样的Excel工作表目录该如何制作呢?下面小编就带大家了解一下制作原理及步骤吧!
首先我们需要新建一个空白的工作表,重命名为“目录”,作为我们制作目录的存放的位置。
然后,右击“目录”工作表名称标签,点击“查看代码”命令,自动弹出VBA代码录入编辑窗口,将下面的一段VBA代码复制粘贴到窗口中。最后关闭VBA窗口即可。如下图所示:
VBA代码如下:
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
赞 (0)