KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在工作簿中创建所有工作表名称的列表?

作者技术支持修改日期

假设您有一个包含多个工作表的工作簿,并希望自动生成一份所有工作表名称的列表,且每个名称都附带可点击的超链接,以便快速跳转至对应工作表。本教程将为您介绍在 Excel 中快速高效生成此类工作表名称列表的方法。

显示 Excel 中列出的多个工作表名称的截图

使用公式动态获取工作簿中的所有工作表名称

使用 Kutools for Excel 获取工作簿中的所有工作表名称

使用 VBA 代码获取工作簿中的所有工作表名称


使用公式动态获取工作簿中的所有工作表名称

在 Excel 中,您可以定义一个单元格名称,然后应用公式从当前工作簿中列出所有工作表名称,请按以下步骤操作:

1. 单击“公式”>“名称管理器”,参见截图:

Excel 中用于为工作表名称创建命名区域的名称管理器截图

2. 在“名称管理器”对话框中,单击“新建”按钮(参见截图):

在名称管理器中为工作表名称创建新名称的截图

3. 在弹出的“新建名称”对话框中,于“名称”文本框内输入一个名称,并将下方公式复制到“引用位置”文本框中,参见截图:

=GET.WORKBOOK(1)&T(NOW())

展示如何定义 GET.WORKBOOK 公式以动态列出工作表名称的截图

4. 然后单击“确定”>“关闭”以关闭对话框。接下来,请转到您希望列出所有工作表名称的工作表,并在空白单元格中输入以下公式:

=IFERROR(INDEX(MID(Sheetnames,FIND("]",Sheetnames)+1,255),ROWS($A$2:A2)),"")

注意:上述公式中的“Sheetnames”是您在第 3 步中创建的单元格名称。

5. 然后向下拖动填充柄,直至出现空白单元格为止。此时,当前工作簿中的所有工作表名称均已列出,如下方截图所示:

使用公式在 Excel 中动态列出工作表名称的截图

6. 若要为每个工作表创建超链接,请使用以下公式:

=HYPERLINK("#'"&A2&"'!A1","Go To Sheet")

注意:上述公式中的“A2”是包含工作表名称的单元格,“A1”是您希望激活的目标单元格位置。例如,单击超链接文本后,将自动跳转至对应工作表的 A1 单元格。

展示为列出的工作表名称创建超链接的截图

7. 现在,只需单击超链接文本,即可立即跳转至对应的工作表,效果如下方演示所示:

GIF 动图展示点击超链接后跳转到相应工作表的过程

提示:
  • 1. 使用上述公式后,创建工作表名称列表将实现动态更新;当您更改工作簿中的工作表名称时,索引工作表中的名称也会自动同步更新。
  • 2. 请将文件另存为“启用宏的 Excel 工作簿”,以确保关闭并重新打开后,公式仍可正常运行。

使用 Kutools for Excel 获取工作簿中的所有工作表名称

借助第三方加载项“Kutools for Excel”的“创建链接表”功能,只需单击一次,即可生成工作表名称列表,并为每个工作表添加超链接。

Kutools for Excel 提供超过 300 项高级功能,简化复杂任务,提升创造力与效率。集成 AI 功能,Kutools 能精准自动化任务,让数据管理变得轻松自如。有关 Kutools for Excel 的详细信息……         免费试用……

1. 单击“KUTOOLS PLUS”>“工作表”>“创建链接表”,操作界面如截图所示:

Excel 中 Kutools 选项卡下的“创建工作表名称列表”选项截图

2. 在“创建链接表”对话框中,请完成以下设置:

“创建工作表名称列表”对话框的截图

(1.) 选择您偏好的“类型”,即可创建包含超链接或宏按钮的工作表名称。

(2.) 输入要用作工作表索引的名称。

(3.) 指定工作表索引所在的位置。

(4.) 指定新工作表中用于显示工作表名称的列数。

3. 完成设置后,单击“确定”,所有工作表名称将带链接列出在当前工作簿的新工作表中。参见截图:

带有超链接的工作表名称带有宏按钮的工作表名称
使用 Kutools 创建的带超链接的工作表名称截图使用 Kutools 创建的带宏按钮的工作表名称截图

Kutools for Excel——通过 300 多个必备工具大幅提升 Excel 功能,助您工作更快更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取


使用 VBA 代码获取工作簿中的所有工作表名称

1. 按住“ALT”+“F11”键,即可打开“Microsoft Visual Basic for Applications”窗口。

2. 单击“插入”>“模块”,并将以下宏代码粘贴到弹出的“模块”窗口中。

VBA:在新工作表中列出所有带超链接的工作表名称:

Sub CreateIndex()
'updateby Extendoffice
    Dim xAlerts As Boolean
    Dim I  As Long
    Dim xShtIndex As Worksheet
    Dim xSht As Variant
    xAlerts = Application.DisplayAlerts
    Application.DisplayAlerts = False
    On Error Resume Next
    Sheets("Index").Delete
    On Error GoTo 0
    Set xShtIndex = Sheets.Add(Sheets(1))
    xShtIndex.Name = "Index"
    I = 1
    Cells(1, 1).Value = "INDEX"
    For Each xSht In ThisWorkbook.Sheets
        If xSht.Name <> "Index" Then
            I = I + 1
            xShtIndex.Hyperlinks.Add Cells(I, 1), "", "'" & xSht.Name & "'!A1", , xSht.Name
        End If
    Next
    Application.DisplayAlerts = xAlerts
End Sub

3. 按下“F5”键运行此宏,当前工作簿中的所有工作表名称将立即列在名为“Index”的新工作表中,并附带可一键跳转至各工作表的超链接。效果如下图所示:

名为“Index”的新工作表,其中列出了活动工作簿中的所有工作表名称的截图