當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回到Excel主界面後,我們只要點擊一下除“目錄”工作表名稱標籤以外的的任意一個工作表名稱標籤,比如本例中,小編點擊了“單價表”工作表名稱標籤,我們發現在“目錄”表中,所有的工作表名稱就自動放置到了A列,形成了一個目錄列表。

最後我們就實現了當選中“目錄”表中對應A列的表名就會跳轉到對應的表並自動隱藏其他的表。Excel目錄至此就製做好了。

這種製作目錄方法的一大特色就是當選中“目錄”表中對應A列的表名就會跳轉到對應的表並自動隱藏其他的表,但是我們如何將隱藏的所有的表格顯示出來呢?
如果直接右擊工作表,點擊“取消隱藏”按鈕的話,我們發現“取消隱藏”按鈕是灰色不可用狀態,說明這不是普通的隱藏工作表,而是一種深度的隱藏工作表。

想要解決這個問題,我們只需要再次進入VBA編輯窗口,點擊運行剛才那段代碼,這時候,所有隱藏的工作表就都顯示出來了。

這種製作Excel目錄的方法還有一個特別方便的地方:
就是當我們新增了工作表之後,我們無需再重新製作目錄,目錄列表會實現自動更新,非常的方便,如下圖所示:

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/255822.html
微信掃一掃
支付寶掃一掃