EXCEL文件里的工作表太多,簡單VBA代碼快速添加目錄表

在微軟excel表裡,沒有提供sheet目錄樹的功能,通過vba代碼,我們可以簡便的生成目錄表,在目錄表點擊對應sheet名即可方便的跳轉到對應sheet表

使用效果如下

代碼如下

使用方法:alt+F11打開vba編輯器,粘貼下面代碼,運行創建目錄即可

代碼最後1句單引號可取消 運行後即可 在子表中 按下ctrl+j快速返回到目錄表

代碼如下

Sub 創建目錄()

"關閉屏幕更新加快速度

Application.ScreenUpdating = False

Dim i As Integer, Sht_Count

"如果不存在「目錄」則添加目錄工作表

If Not IsSht("目錄") Then Sheets.Add(Sheets(1)).Name = "目錄"

Sht_Count = Sheets.Count "獲取工作表數量

For i = 2 To Sht_Count "遍歷工作表

"在「目錄」工作表添加鏈接

Sheets("目錄").Hyperlinks.Add Anchor:=Sheets("目錄").Cells(i - 1, 2), _

Address:="", SubAddress:=""" & Sheets(i).Name & ""!A1", _

TextToDisplay:=Sheets(i).Name, ScreenTip:="單擊打開:" & Sheets(i).Name

Next i

"恢復屏幕更新

Application.ScreenUpdating = True

"為返回目錄過程指定快捷鍵為【Ctrl+J】可自己選用

"Application.OnKey "^j", "返回目錄"

End Sub

"聲明一個函數,用於判斷是否存在某個指定名稱的工作表

Function IsSht(ShtName As String)

On Error Resume Next

Dim sht As Worksheet

Set sht = Sheets(ShtName)

IsSht = (Err = 0)

End Function

Sub 返回目錄()

"如果有「目錄」則返回「目錄」工作表

If IsSht("目錄") Then Sheets("目錄").Select

End Sub

推薦閱讀:

張美娃的文件夾【紀錄片】
燈下悅讀的文件夾【一圖財經】
菩提路上人的文件夾【傷感語句20】
無為文件管理術之文件夾結構及層級
天地虛懷xia的文件夾【松腰系列站松】

TAG:工作 | 代碼 | 簡單 | 目錄 | 文件 |