Tạo mục lục như bạn nói thì mình chưa hiểu, vì trong 1 sheet thì phải có kiểu cấu trúc bảng thế nào mới cần tạo mục lục chứ? còn nếu muốn tạo mục lục cho các sheet khi có quá nhiều sheet mà ta không thể biết ở đâu mà tìm kiếm thì có thể dùng cách sau:
Các bước thực hiện:
1. Trở về Sheet đầu tiên. Vào Insert > Worksheet. Đặt tên của Sheet này lại thành MụcLục hay để nguyên tùy thích.
2. Right-click lên thẻ của Sheet này chọn View Code.
3. Copy tất cả đoạn Code này vào:
PHP:
PHP Code:
Private Sub Worksheet_Activate()
Dim wSheet As Worksheet
Dim M As Long
M = 1
With Me
.Columns(1).ClearContents
.Cells(1, 1) = "INDEX"
.Cells(1, 1).Name = "Index"
End With
For Each wSheet In Worksheets
If wSheet.Name <> Me.Name Then
M = M + 1
With wSheet
.Range("H1").Name = "Start" & wSheet.Index
.Hyperlinks.Add Anchor:=.Range("H1"), Address:="", SubAddress:="Index", TextToDisplay:="Back to Index"
End With
Me.Hyperlinks.Add Anchor:=Me.Cells(M, 1), Address:="", SubAddress:="Start" & wSheet.Index, TextToDisplay:=wSheet.Name
End If
Next wSheet
End Sub
4. Nhấn Alt + Q và Save lại.
5. Từ Excel, vào Tool > Macro > Security. Trong hộp thoại này, chọn mức Low. Vì trong file Excel của bạn có dùng Macro, nên đôi khi mức Macro security ở mức high, đoạn lệnh của bạn sẽ không có tác dụng. Nếu bạn chọn Mediup, bạn sẽ được nhắc là chạy macro không. Trong trường hợp này, bạn chọn Enable Macro để thấy tác dụng.
5. Nhấn Ctrl + W để đóng lại Workbook và mở lại Workbook này.
Đến đây, khi nhấp vào Sheet có tên là MụcLục, bạn sẽ thấy danh sách các bảng tính hiện ra. Nhấp vào Sheet nào mà bạn muốn di chuyển nhanh đến để làm việc....
Lưu ý: Cách này không thể dùng với trường hợp bảng code VBA đã được bảo vệ bằng password