如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表
- 2022-02-28
- 来源/作者: 菜鸟图库/ 菜鸟图库
- 527 次浏览
本文将讲述如何在Excel中动态获取当前工作簿中所有工作表名称。如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表。
- 使用公式动态获取所有工作表名称
- 使用VBA创建所有工作表名称的动态列表
假设您有一个包含大量工作表的Excel工作簿,并且您希望获得当前工作簿中所有工作表名称的动态列表。这篇文章将会讲述两种创建动态工作表名称列表的方法。
使用公式动态获取所有工作表名称
步骤1:转到Excel功能区中的“公式”选项卡,然后单击“定义的名称”组下的“定义名称”命令。并且将打开“新建名称”对话框。
步骤2:在“新建名称”对话框的“名称”字段中输入“SheetList”。然后输入以下公式:
=REPLACE(GET.WORKBOOK(1),1,FIND(“]”,GET.WORKBOOK(1)),””)
步骤3:单击“确定”按钮,然后在单元格A1中输入数字1,在单元格A2中输入数字2。
步骤4:在A列中选择这两个单元格并将它们向下拖动到的输入序列号3,4,5等。
步骤5:在单元格B1中键入以下公式,然后应在单元格B1中输入第一个工作表名称。
=INDEX(SheetList,A1)
步骤6:向下拖动Cell B1,直到看到#REF!错误。
使用VBA创建所有工作表名称的动态列表
您还可以使用Excel VBA宏获取当前工作簿中所有工作表名称的动态列表,只需执行以下步骤:
步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。
步骤2:然后将出现“Visual Basic编辑器”窗口。
步骤3:单击“插入” – >“模块”以创建新模块。
步骤4:将以下VBA代码粘贴到代码窗口中。然后单击“保存”按钮。
Sub SheetNames()
Columns(1).Insert
For i = 1 To Sheets.Count
Cells(i, 1) = Sheets(i).Name
Next i
End Sub
- Sub SheetNames()
- Columns(1).Insert
- For i = 1 To Sheets.Count
- Cells(i, 1) = Sheets(i).Name
- Next i
- End Sub
Sub SheetNames()
Columns(1).Insert
For i = 1 To Sheets.Count
Cells(i, 1) = Sheets(i).Name
Next i
End Sub
步骤5:返回当前工作表,然后运行上面的excel宏。点击运行按钮。
步骤6:让我们看看结果:
标签(TAG) VBA教程