欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Office

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

程序员文章站 2022-05-22 13:37:39
使用宏表函数GET.WORKBOOK可提取工作表名称,这在使用公式查询或汇总多工作表数据时经常会用到,公式中使用到了INDEX函数,不了解的朋友可以翻阅相关资料。...

使用宏表函数GET.WORKBOOK可提取工作表名称,这在使用公式查询或汇总多工作表数据时经常会用到,公式中使用到了INDEX函数,不了解的朋友可以翻阅相关资料。

简述

首先调出定义名称对话框,快捷键Ctrl+F3,输入一个名称,在引用位置处输入=GET.WORKBOOK(1),并点击确定。双击一个单元格输入=INDEX(ShName,ROW(A1)),INDEX(数组,第二参数)表示从数组中提取第几个元素,下拉公式就可以看到顺序返回了所有工作表名称,这样就可以在其他函数中引用了。

步骤

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

提取工作表名称过程:

Ctrl+F3调出定义名称对话框,或者点击【公式】-【定义名称】调出定义名称对话框。

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

在【名称】框里输入一个定义名称(本例输入ShName),方便在工作表中引用。在【引用位置】处输入=GET.WORKBOOK(1),设置完毕后点击【确定】按钮。

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

双击一个单元格,输入公式:=INDEX(ShName,ROW(A1)),这时就返回了包括工作簿名称的工作表名称。

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

INDEX函数使用说明:

INDEX(数组,第二参数)表示从数组中提取第几个元素。例如:INDEX({1,7,9},2)表示从{1,2,3}的数组里提取第2个元素,也就是7。

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

将公式修改一下,将中括号的部分去掉,只留下工作表名称。公式为:

=REPLACE(INDEX(ShName,ROW(A1)),1,FIND("]",INDEX(ShName,ROW(A1))),"")

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

下拉公式就可以看到顺序返回了所有工作表名称,这样就可以在其他函数中引用了。

注意:工作簿中隐藏的工作表名称也会显示出来,本例隐藏了一个名称为“合并单元格”的工作表。

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

如果是在2007版Excel中使用宏表函数,点击保存时会弹出下面的对话框:

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

解决方案有两种:

1)选择另存为97-2003版Excel格式,也就是扩展名为.xls的格式;

Excel用宏表函数GET.WORKBOOK来批量提取全部工作表名称

2)选择另存为启用宏的工作簿。