怎么设置目录格式样式(目录格式调整)

当Excel中的工作表数量很多时,有一个带链接的目录真是太方便了,如下图所示,当我们选中“目录”表中对应A列的表名就会跳转到对应的表并自动隐藏其他的表。

这样的Excel工作表目录该如何制作呢?下面小编就带大家了解一下制作原理及步骤吧!

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

首先我们需要新建一个空白的工作表,重命名为“目录”,作为我们制作目录的存放的位置。

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

然后,右击“目录”工作表名称标签,点击“查看代码”命令,自动弹出VBA代码录入编辑窗口,将下面的一段VBA代码复制粘贴到窗口中。最后关闭VBA窗口即可。如下图所示:

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

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

回到Excel主界面后,我们只要点击一下除“目录”工作表名称标签以外的的任意一个工作表名称标签,比如本例中,小编点击了“单价表”工作表名称标签,我们发现在“目录”表中,所有的工作表名称就自动放置到了A列,形成了一个目录列表。

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

最后我们就实现了当选中“目录”表中对应A列的表名就会跳转到对应的表并自动隐藏其他的表。Excel目录至此就制做好了。

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

这种制作目录方法的一大特色就是当选中“目录”表中对应A列的表名就会跳转到对应的表并自动隐藏其他的表,但是我们如何将隐藏的所有的表格显示出来呢?

如果直接右击工作表,点击“取消隐藏”按钮的话,我们发现“取消隐藏”按钮是灰色不可用状态,说明这不是普通的隐藏工作表,而是一种深度的隐藏工作表。

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

想要解决这个问题,我们只需要再次进入VBA编辑窗口,点击运行刚才那段代码,这时候,所有隐藏的工作表就都显示出来了。

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

这种制作Excel目录的方法还有一个特别方便的地方:

就是当我们新增了工作表之后,我们无需再重新制作目录,目录列表会实现自动更新,非常的方便,如下图所示:

为自己的Excel制作一个“目录”,拒绝盲目低效率的翻阅工作表

(0)
仰望辉煌。  的头像仰望辉煌。  

相关推荐

发表回复

登录后才能评论