Excel怎么提取工作表名称?

如题所述

1.

一步搞定之代码

Sub 提取所有工作表名称()

for x=1 to sheets.count

cells(x,1)=sheets(x).name

next x

End Sub

如图,按照顺序来就可以啦。

方法/步骤

1.分步阅读

首先我们打开一个工作样表作为例子。

2.

工作表标签名即是工作表的名称,在指定激活当前工作表时,可以使用worksheets(“工作表名称”)的方法来指定。我们这里可以使用vba来获取这个名称。

3.

我们使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:

Sub Delete_EmptySheets()

Dim sh As String

sh = Worksheets(1).Name

MsgBox sh

End Sub

4.

运行这段代码后,就可以获得5月工资这个工作表的名称。并将这个名称赋予了sh这个变量。我们就可以使用这个变量来指定工作表。

5.

这里我们需要注意的是,worksheets()使用工作表名称来指定工作表的时候字符串必须使用“”括住,而使用变量时则不需要,如果用“”括住变量,那么变量会被识别为字符串而出错。

6.

修改名称我们可以直接使用worksheets().name= 的方式进行改名。修改的名称如果使用变量赋值,则不需要“”括住,如果是直接输入,则同样需要以字符串的方式。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-11-23
提取Excel工作表名称的方法有两种:
方法一:
1. 打开Excel文件,点击“公式”栏,进而点击“定义管理器”。
2. 在弹出的对话框中,点击新增按钮, 名称:“sheet”, 引用位置:“=REPLACE(GET.WORKBOOK(1),1,FIND("]",GET.WORKBOOK(1)),)&T(NOW())”,并点击确认。
3. 再次点击新增按钮, 名称:“sheetname”, 引用位置:“=LOOKUP(ROW(INDIRECT("1:"&COLUMNS(sheet))),MATCH(sheet,sheet,),sheet)”,并点击确认。
4. 在工作表单元内输入“=sheetname”并确认,得到第一张工作表的名称sheet1。
5. 如果表格有n个sheet页,往下拖动新增n-1个单元格,选择拖动后全部的单元格范围,光标回到函数输入框中,键盘同时按下ctrl、shift、e。
方法二:
1. 定义名称:点击菜单的【公式】—【定义名称】,打开【新建名称】对话框,在【名称】处输入一个定义名称,本例输入:sheetname,方便后面在工作表中引用;在【引用位置】处输入:=GET.WORKBOOK(1),然后点击【确定】。
2. 输入公式:在第一个工作表的A1单元格输入以下公式: =IFERROR(INDEX(sheetname,ROW(A1)),"") 然后公式下拉填充,知道出现空白即停止。
3. 去掉工作簿名称:在B1单元格里输入工作表名称,输入完后回车。 然后按CTRL+E即可快速填充下面所有单元格的内容。
以上两种方法均可提取Excel工作表名称,请根据需求选择合适的方法。
相似回答