如何在EXCEL软件里自动生成目录清单?
一、文档说明
1)以下面文档为例, 共有16个sheet页,其中sheet2~sheet16是有内容的,sheet1作为目录页。
2)修改sheet1,使其作为目录页。
二、写VBA处理
1)首先打开VBA开发环境(其实就是打开"开发工具"->"Visual Basic"),此处略去不说。
2)其次,复制以下代码到开发环境。
Sub getAllWorkSheets()
' 得到所有的sheet页名称,并加上超连接
totalNum = Worksheets.Count
Sheet1.Activate
Range("B:B").Select
Selection.NumberFormatLocal = "@"
' 从2开始就是不带“目录”Sheet页,如果要带,则从1开始
For index_i = 2 To totalNum
sheetName = Worksheets(index_i).Name
Cells(index_i, 2) = sheetName
tar_sheet = "'" & sheetName & "'"
Cells(index_i, 2).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
tar_sheet & "!A1", TextToDisplay:=sheetName
Next index_i
End Sub
3)其中第四行的 Sheet1 需灵活设定。
4)复制上述代码后。
5)如果第四行不是Sheet1,打开此处查看Sheet名称,方式如下:
打开 视图->工程资源管理器 然后查看,参考图。
6)这里目录页是Sheet1。
三 运行VBA
1)在复制的代码中按 “F5”,或者在工具栏点击绿色三角,"运行子过程/用户窗体"。
2)最后,打开"目录"sheet页,OK,搞定。
2024-07-20 广告