Excle中如果工作薄中工作表比较多,如何快速提取所有表名?

方法如下:

1、以WPS为例,首先在【公式】中找到【名称管理器】,选择【新建】,如下图

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(1)

2、在对话框中“名称”栏中输入名称(随意填写,自己记住就好,这里填写“工作表名称”,”范围“:工作薄。"引用位置":=GET.WORKBOOK(1),如图:

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(2)

3、在A1单元格中输入公式:=INDEX(工作表名称,ROW()),(公式中的“工作表名称”就是第一步新建的名称)下拉,即可得到整个工作薄的所有工作表名称,也可以在任意单元格中输入=INDEX(工作表名称,ROW(A1)) 这个公式再下拉得到表名。这里要注意的是,得到的名称是包含工作薄名字的,要想在后续用INDIRECT函数引用,需要将表名提取出来,可以在后一列使用公式:

=RIGHT(A1,LEN(A1)-FIND("]",A1)) 解释:提取A1单元格中“]”号所在位置后面的字符

如图所示:

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(3)

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(4)

4、工作表名称的公式引用

提取到工作薄中的所有工作表名称后,即可对工作表的各项数据进行批量运用公式计算,这里主要运用INDIRECT函数来进行,

公式:=SUM(INDIRECT(B3&"!E:E"))

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(5)

excle多个工作簿数据汇总(Excle提取工作薄中所有工作表表名及引用表名使用公式)(6)

解释:=SUM(INDIRECT(B3&"!E:E"))

sum函数求和,INDIRECT(B3&"!E:E"为引用工作表中B3单元格内容,连接符&连接感叹号“!”作为E:E列的地址,INDIRECT(B3&"!E:E")公式处理结果为:('3'!E:E),即第三个表中E列,从而整个公式的结果为=SUM('3'!E:E),即求第三个表中E列的和。

文章中的地址都为相对引用,如需套用,请变换相对单元格地址。

备注:文章发表只为爱好,用于个人经验积累,不喜勿喷!

,