亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
736
2025-04-02
excel數據透視表如何創建導航工作表
當工作簿中的工作表不多時,我們只需要單擊底部的工作表名到達想要操作的工作表。然而,當有很多工作表時,要找到想要的工作表就需要邊單擊滾動按鈕邊查找工作表,這可能要花點時間了。
其實,我們可以創建一個導航工作表,將工作簿中的所有工作表名稱都放置到導航工作表中,并設置到工作表的鏈接,這樣,我們只需要單擊工作表名稱,即可到達相對應的工作表。同時,在每個工作表中,放置回到導航工作表的鏈接,這樣單擊該鏈接就可以迅速回到導航工作表。這樣更方便快捷,如下圖1所示。
圖1
實現上述功能的VBA代碼如下:
Sub NavigateWorksheet()
Dim wks As Worksheet
Dim i As Integer
i = 0
‘如果存在”導航”工作表,則清除其內容
‘如果不存在”導航”工作表,則添加
If SheetExists(“導航”) Then
Cells.ClearContents
Worksheets(“導航”).Range(“A1”).Select
Else
Worksheets.Add before:=Worksheets(1)
ActiveSheet.Name = “導航”
End If
‘遍歷工作表
For Each wks In Worksheets
i = i + 1
‘排除”導航”工作表
If i = 1 Then GoTo Continue
‘添加導航鏈接
With ActiveCell
.Value = wks.Name
.Hyperlinks.Add ActiveCell,””, _
wks.Name & “!A1″, _
TextToDisplay:=wks.Name, _
ScreenTip:=”單擊返回導航工作表”
With Worksheets(i)
.Range(“A1″).Value =”返回到工作表: ” & ActiveSheet.Name
.Hyperlinks.AddSheets(wks.Name).Range(“A1”), “”, _
“‘” &ActiveSheet.Name & “‘” & “!” &ActiveCell.Address, _
ScreenTip:=”返回到工作表:” & ActiveSheet.Name
End With
End With
ActiveCell.Offset(1, 0).Select
Continue:
Next wks
End Sub
‘判斷工作表是否存在
Function SheetExists(strName) As Boolean
Dim obj As Object
On Error Resume Next
Set obj = ActiveWorkbook.Sheets(strName)
If Err.Number = 0 Then
SheetExists = True
Else
SheetExists = False
End If
End Function
運行NavigateWorksheet過程,將在工作簿中創建一個名為“導航”的工作表(如果該工作表已存在,則清空其中的內容),然后在“導航”工作表的列A中輸入該工作簿其他工作表的名稱并建立到該工作表的鏈接,同時在其他工作表的單元格A1中創建返回“導航”工作表的鏈接。
代碼的圖片版如下:
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。