主页 > 网络问答易尔灵网络科技

excel怎么生成目录和页码?

145 2024-03-07 09:16

在Excel中生成目录和页码需要使用宏来实现,以下是具体的步骤:

1. 首先按下`Alt + F11`,打开Visual Basic for Applications (VBA)编辑器。

2. 在VBA编辑器中,点击"插入"菜单,选择"模块",插入一个新模块。

3. 在新模块中添加以下VBA代码:

```vba

Sub GenerateTableOfContents()

    Dim ws As Worksheet

    Dim tocSheet As Worksheet

    

    '创建目录表工作表

    Set tocSheet = ThisWorkbook.Sheets.Add(After:= _

                    ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))

    tobSheet.Name = "目录"

    

    '设置目录表标题样式

    With tocSheet.Range("A1")

        .Value = "目录"

        .Font.Bold = True

        .Font.Size = 14

    End With

    

    '设置页码表头

    tocSheet.Range("A2").Value = "Sheet名字"

    tocSheet.Range("B2").Value = "页码"

    

    '为每个工作表生成目录和页码

    For Each ws In ThisWorkbook.Sheets

        '跳过目录表本身

        If ws.Name <> "目录" Then

            '添加Sheet名字和页码到目录表

            tocSheet.Range("A" & tocSheet.Cells(tocSheet.Rows.Count, 1).End(xlUp).Row + 1).Value = ws.Name

            tocSheet.Range("B" & tocSheet.Cells(tocSheet.Rows.Count, 2).End(xlUp).Row + 1).Value = ws.Index

            ws.Select

            '在第一个单元格插入目录链接

            ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", _

                SubAddress:="目录!A" & tocSheet.Cells(tocSheet.Rows.Count, 1).End(xlUp).Row, _

                TextToDisplay:=ws.Name

        End If

    Next ws

    

    '调整目录表格式

    With tocSheet

        .Columns("A:B").AutoFit

        .Range("A:B").HorizontalAlignment = xlCenter

    End With

    

    '在每个工作表底部插入页码

    For Each ws In ThisWorkbook.Sheets

        ws.Select

        ActiveWindow.ScrollRow = 1

        '在每个工作表底部插入页码

        ActiveSheet.PageSetup.RightFooter = "Page &P of &N"

    Next ws

    

    '返回目录表

    tocSheet.Select

End Sub

```

4. 点击VBA编辑器中的运行按钮(或按下F5键)运行宏。

5. 运行完宏后,会在Excel工作簿中生成一个名为"目录"的工作表,该工作表会列出其他工作表的名称和页码。每个工作表的底部页眉会显示页码。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片

热点提要

网站地图 (共30个专题135752篇文章)

返回首页