Excel 自动根据Sheet名生成目录
打開你要創建,目錄的表格按Alt+F11在談出的對話框中點插入選擇模塊然后把下面的代碼復制到模塊中
Sub mulu()
??? On Error GoTo Tuichu
??? Dim i As Integer
??? Dim ShtCount As Integer
??? Dim SelectionCell As Range
??? ShtCount = Worksheets.Count
??? If ShtCount = 0 Or ShtCount = 1 Then Exit Sub
??? Application.ScreenUpdating = False
??? For i = 1 To ShtCount
??????? If Sheets(i).Name = "目錄" Then
??????????? Sheets("目錄").Move Before:=Sheets(1)
??????? End If
??? Next i
??? If Sheets(1).Name <> "目錄" Then
??????? ShtCount = ShtCount + 1
??????? Sheets(1).Select
??????? Sheets.Add
??????? Sheets(1).Name = "目錄"
??? End If
??? Sheets("目錄").Select
??? Columns("B:B").Delete Shift:=xlToLeft
??? Application.StatusBar = "正在生成目錄…………請等待!"
??? For i = 2 To ShtCount
??????? ActiveSheet.Hyperlinks.Add Anchor:=Worksheets("目錄").Cells(i, 2), Address:="", SubAddress:= _
?????????????????????????????????? "'" & Sheets(i).Name & "'!R1C1", TextToDisplay:=Sheets(i).Name
??? Next
??? Sheets("目錄").Select
??? Columns("B:B").AutoFit
??? Cells(1, 2) = "目錄"
??? Set SelectionCell = Worksheets("目錄").Range("B1")
??? With SelectionCell
??????? .HorizontalAlignment = xlDistributed
??????? .VerticalAlignment = xlCenter
??????? .AddIndent = True
??????? .Font.Bold = True
??????? .Interior.ColorIndex = 34
??? End With
??? Application.StatusBar = False
??? Application.ScreenUpdating = True
Tuichu:
End Sub
????????復制完成后按F5運行即可,如果后期對表名做了修改,只需要重新F5運行刷新下目錄即可。
總結
以上是生活随笔為你收集整理的Excel 自动根据Sheet名生成目录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kettle环境变量/kettle.pr
- 下一篇: VB 实现大文件的分割与恢复,引用 AD