Excel提取Excel工作簿中所有工作表的名称怎么设置?操作要点整理

酷辰吖_8536

酷辰吖_8536

2026-07-14

844人浏览

原创

在excel里想批量把当前工作簿所有工作表的名称一次性提出来,用「名称管理器+get.workbook+index/textafter」这套组合就能搞定。本次操作环境是microsoft 365版的excel,这个方法特别适合给目录页、汇总页、检查表自动生成工作表清单。要注意get.workbook是excel 4.0的宏函数,做完之后文件记得存成启用宏的格式,比如.xlsm或者.xlsb,不然下次打开容易丢效果。

动手之前先在当前工作簿里新建一张空白页,命名成「工作表目录」专门放提取出来的结果,别和业务数据混在一起,之后新增、删除、重命名工作表的时候,要刷新清单也方便。

第一步:确认工作簿里已有多个工作表

先看Excel窗口底部的工作表标签,确认所有要提取名称的表都在同一个工作簿里。示例里已经提前建好了「工作表目录、人力资源部、市场部、法务部、财务部、后勤部、公关部、工程部」这些标签,后面的公式会直接读取这些标签的名字。

Excel 工作簿底部多个中文工作表标签

第二步:在名称管理器中新建名称

点开顶部菜单栏的「公式」选项卡,找到「名称管理器」点进去,也可以直接选「定义名称」,新建一个自定义名称。名称栏填 sheetname,下方的引用位置输入 =GET.WORKBOOK(1) 就行。这个自定义名称不是普通的单元格内容,相当于提前让Excel把当前工作簿所有工作表的名称打包成数组存好,后面再用普通工作表公式一条条读出来。

Excel 新建名称窗口中设置 sheetname 引用 GET.WORKBOOK

第三步:在目录页输入提取公式

切回刚才建好的「工作表目录」页,在A1单元格输入公式 =TEXTAFTER(INDEX(sheetname,ROW(A1)),"]"),输完直接往下填充。INDEX(sheetname,ROW(A1)) 负责先取出第1个工作表的条目,再用 TEXTAFTER 把前面的文件名和右方括号全部删掉,只留后面纯工作表的名字。往下填充的时候,ROW(A1) 会自动变成1、2、3,依次把所有工作表的名字逐个返回出来。

Excel 目录页使用 TEXTAFTER 和 INDEX 提取工作表名称

公式语法拆开看

刚才名称管理器里的核心语法是 =GET.WORKBOOK(type_num)。这次我们用的是 =GET.WORKBOOK(1),运行后返回当前工作簿所有工作表的完整名称,格式一般是类似 [公司部门建设.xlsx]人力资源部 这种带文件名的形式。要把前面的冗余内容清掉只留右方括号后面的表名,就搭配 TEXTAFTER 或者 MID/FIND 处理就行。

Code Review Excellence
Code Review Excellence

掌握有效的代码审查实践,提供建设性反馈,尽早捕获错误,促进知识共享,同时保持团队士气。

下载
参数或公式片段 作用 本例写法
GET.WORKBOOK(1) 返回工作簿中所有工作表的完整名称数组 写在名称管理器的“引用位置”里
sheetname 给 GET.WORKBOOK(1) 取的名称,后续公式通过它调用结果 新建名称时填写
INDEX(sheetname,ROW(A1)) 按序号取出第 1、2、3 个工作表项目 填在目录页单元格公式中
TEXTAFTER(...,"]") 删除工作簿名和右方括号,只保留工作表名称 适合 Microsoft 365
IFERROR(...,"") 填充到超过工作表数量的行时返回空白,避免出现错误值 可加在最外层

要是你预留的目录行很多,远远超过实际工作表的数量,建议把公式改成 =IFERROR(TEXTAFTER(INDEX(sheetname,ROW(A1)),"]"),"")。这样填充到没有对应工作表的空行时会自动返回空白,不会跳出错误值,目录页看起来更干净。

旧函数写法

如果你的Excel版本太低,没有 TEXTAFTER,第三步的公式可以换成 =IFERROR(MID(INDEX(sheetname,ROW(A1)),FIND("]",INDEX(sheetname,ROW(A1)))+1,99),"")。这条公式先用 FIND 定位到右方括号的位置,再用 MID 从方括号的下一个字符开始截取,最终效果和 TEXTAFTER 完全一样。要是你用的是WPS或者其他旧版Excel,提前确认下对应函数的支持情况再动手。

容易出错的地方

别直接把 GET.WORKBOOK(1) 写到普通单元格里,普通单元格根本没法直接调用这个宏函数,必须放在自定义名称的引用位置里才行。建好名称之后要是发现清单没更新,按一下 F9 手动重算就行,也可以直接把引用位置的内容写成 =GET.WORKBOOK(1)&T(NOW()),这样只要工作簿触发重算,工作表名称清单就会自动刷新。

存文件的时候一定要注意格式,要是存成普通的.xlsx格式,宏相关的自定义公式是没法永久保存的,后续还要用这个自动目录的话,存成.xlsm或者.xlsb格式最稳妥。还有如果你的工作表名称里本身带右方括号这类特殊字符,最好先做下测试,别让清理逻辑把表名给截错了。

扩展示例:做一个可点击目录

把所有表名提取出来之后,还能直接做成可跳转的超链接目录,在B1单元格输入 =HYPERLINK("#'"&A1&"'!A1","进入"&A1),往下填充就行。这样A列显示纯表名,点B列的链接就能直接跳转到对应工作表的A1单元格。注意如果你的工作表名称里带空格,公式里包裹表名的单引号绝对不能删,不然跳转就会报错。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

2023.07.25

4521

7

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.31

2716

5

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

2023.08.02

2520

3

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

2023.08.02

1424

3

excel斜线表头一分为二
excel斜线表头一分为二

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

2023.08.02

677

5

绝对引用的输入方法
绝对引用的输入方法

绝对引用允许在公式中引用一个固定的单元格,而不会随着公式的复制和粘贴而改变引用的单元格。本专题为大家提供绝对引用相关内容的文章,大家可以免费体验。

2023.08.09

5128

7

java导出excel
java导出excel

在Java中,我们可以使用Apache POI库来导出Excel文件。本专题提供java导出excel的相关文章,大家可以免费体验。

2023.08.18

5863

6

excel输入值非法
excel输入值非法

在Excel中,当输入的数值非法时,有以下多种处理方法。本专题为大家提供excel输入值非法的相关文章,大家可以免费体验。

2023.08.18

1561

3

excel生成二维码
excel生成二维码

虽然Excel本身并不直接支持生成二维码,但我们可以借助一些插件或宏来实现在Excel中生成二维码的功能。本专题为大家提供excel生成二维码的相关文章。

2023.08.18

2398

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 43.3万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.5万人学习