給工作簿創建目錄,方法有多種,我們介紹使用VBA的方法

給工作簿創建目錄,方法有多種,我們介紹使用VBA的方法

為工作簿創建目錄,方法有多種,下面介紹使用VBA的方法。

給工作簿創建目錄,方法有多種,我們介紹使用VBA的方法

⑴、點擊單元格,激活相同名稱的工作表。

右鍵點擊“目錄”工作表標籤,選擇“查看代碼”,將下面的代碼粘貼到光標處:

  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2. Sheets(Target.Value).Activate '激活相同名稱的工作表
  3. End Sub

複製代碼

返回工作表,點擊單元格,即可激活名稱相同的工作表,與點擊工作表標籤效果相同。

實際使用中,還需加入一些代碼,判斷單元格是否為空,單元格是否在規定範圍之內等,見附件。

⑵、隱藏多餘的工作表。

要隱藏多餘的工作表,須做兩項工作。

首先,在工程管理器中,右鍵單擊模塊名“ThisWorkbook”,選擇“查看代碼”,如下圖:

給工作簿創建目錄,方法有多種,我們介紹使用VBA的方法

將下面的代碼粘貼到光標處:

  1. Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
  2. If Sh.Name <> "目錄" Then Sh.Visible = 2 '如果工作表標籤不是“目錄”,則隱藏它
  3. End Sub

如果你的工作表標籤不是“目錄”,而是“主界面”或其它,代碼中應根據實際作修改。

第二步,在上面代碼中“Sheets(Target.Value).Activate ”前面插入一行:

Sheets(Target.Value).Visible = 1 '取消隱藏,顯示工作表

效果見附件:

⑶、隱藏目錄工作表。

在各工作表適當的地方,設置一個內容為“返回目錄”的單元格,為了點擊這個單元格,能夠激活目錄工作表,將下面的代碼粘貼到模塊“ThisWorkbook”下:

  1. Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
  2. Sh.Visible = 2 '隱藏非活動狀態的工作表
  3. End Sub
  4. Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  5. If Target.Count = 1 And Target.Range("a1") = "返回目錄" Then '如果點擊的單元格內容為“返回目錄”
  6. Target.Offset(1).Activate
  7. Sheets("目錄").Visible = 1 '將目錄工作表取消隱藏
  8. Sheets("目錄").Activate '激活目錄工作表
  9. End If
  10. End Sub

⑷在目錄中插入圖片

建立目錄時,不少人喜歡使用圖片鏈接各工作表。

實際操作時,右鍵點擊圖片,選擇“超鏈接”,鏈接的目標不要選擇工作表,而是圖片下面對應文字所在的單元格。

這個小技能,大家學會了嗎。歡迎大家留言並關注一下,謝謝支持!


分享到:


相關文章: