当前位置: 主页 > Office办公 > Excel专区 > Excel函数 > 如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

  • 2022-02-28
  • 来源/作者: 菜鸟图库/ 菜鸟图库
  • 527 次浏览

本文将讲述如何在Excel中动态获取当前工作簿中所有工作表名称。如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表。

  • 使用公式动态获取所有工作表名称
  • 使用VBA创建所有工作表名称的动态列表

假设您有一个包含大量工作表的Excel工作簿,并且您希望获得当前工作簿中所有工作表名称的动态列表。这篇文章将会讲述两种创建动态工作表名称列表的方法。

使用公式动态获取所有工作表名称


步骤1:转到Excel功能区中的“公式”选项卡,然后单击“定义的名称”组下的“定义名称”命令。并且将打开“新建名称”对话框。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤2:在“新建名称”对话框的“名称”字段中输入“SheetList”。然后输入以下公式:

=REPLACE(GET.WORKBOOK(1),1,FIND(“]”,GET.WORKBOOK(1)),””)

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤3:单击“确定”按钮,然后在单元格A1中输入数字1,在单元格A2中输入数字2。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤4:在A列中选择这两个单元格并将它们向下拖动到的输入序列号3,4,5等。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤5:在单元格B1中键入以下公式,然后应在单元格B1中输入第一个工作表名称。

=INDEX(SheetList,A1)

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤6:向下拖动Cell B1,直到看到#REF!错误。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

使用VBA创建所有工作表名称的动态列表


您还可以使用Excel VBA宏获取当前工作簿中所有工作表名称的动态列表,只需执行以下步骤:

步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤2:然后将出现“Visual Basic编辑器”窗口。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤3:单击“插入” – >“模块”以创建新模块。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤4:将以下VBA代码粘贴到代码窗口中。然后单击“保存”按钮。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

Sub SheetNames()
    Columns(1).Insert
    For i = 1 To Sheets.Count
        Cells(i, 1) = Sheets(i).Name
    Next i
End Sub
  1. Sub SheetNames()
  2. Columns(1).Insert
  3. For i = 1 To Sheets.Count
  4. Cells(i, 1) = Sheets(i).Name
  5. Next i
  6. 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宏。点击运行按钮。

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

步骤6:让我们看看结果:

如何使用Excel VBA宏创建一个包含工作簿中所有工作表名称的动态列表

标签(TAG) VBA教程