如果您有一个包含数百个工作表的Excel工作簿,现在您想要获得所有工作表名称的列表,那么您可以参考本文。在这里,我们将与您分享3个简单的方法。
有时,您可能需要在Excel工作簿中生成所有工作表名称的列表。如果只有几个工作表,您可以使用方法1手动列出工作表名称。但是,在Excel工作簿中包含大量工作表的情况下,您最好使用后两种方法,它们效率更高。
方法一:手动获取列表
- 首先,打开特定的Excel工作簿。
- 然后,双击一个表的名称在表列表底部。
- 接下来,按“Ctrl + C”复制名称。
- 稍后,创建一个文本文件。
- 然后,按“Ctrl + V”粘贴工作表名称。
- 现在,通过这种方式,您可以将每个工作表的名称逐个复制到文本文件中。
方法二:用公式列出
- 首先,转到“公式”选项卡,然后单击“名称管理器”按钮。
- 接下来,在弹出窗口中,点击“新建”。
- 在随后的对话框中,在“Name”字段中输入“ListSheets”。
- 之后,在“引用”字段中输入如下公式:
=取代(GET.WORKBOOK(1), 1,找到(“]”,GET.WORKBOOK (1)), " ")
- 点击“确定”和“关闭”保存公式。
- 接下来,在当前工作簿中创建一个新的工作表。
- 然后在单元格A1中输入“1”,在单元格A2中输入“2”。
- 然后,选择这两个单元格,将它们拖到A列的输入2、3、4、5等处。
- 然后,把下面的公式放在单元格B1中。
=指数(ListSheets A1)
- 第一个表名将立即输入Cell B1中。
- 最后,复制公式,直到你看到“#REF!””错误。
方法三:通过Excel VBA列表
- 首先,根据“”触发Excel VBA编辑器如何在Excel中运行VBA代码”。
- 然后,将以下代码放入模块或项目中。
Sub ListSheetNamesInNewWorkbook() Dim objNewWorkbook As Workbook Dim objNewWorksheet As Worksheet Set objNewWorkbook = Excel.Application.Workbooks.Add Set objNewWorksheet = objNewWorkbook. sheets (1) For i = 1 To ThisWorkbook.Sheets.Count objNewWorksheet。Cells(i, 1) = i objNewWorksheet。Cells(i, 2) = ThisWorkbook.Sheets(i)。名字Next i With objNewWorksheet .Rows(1).Insert .Cells(1, 1) = "INDEX" .Cells(1, 1).Font.Bold = True .Cells(1, 2) = "NAME" .Cells(1, 2).Font.Bold = True .Columns("A:B").AutoFit End With End Sub
- 稍后,按“F5”立即运行这个宏。
- 立即,一个新的Excel工作簿将显示出来,在其中您可以看到源Excel工作簿的工作表名称列表。
比较
优势 | 缺点 | |
方法1 | 操作简单 | 如果有很多工作表,就太麻烦了 |
方法2 | 操作简单 | 要求您首先键入索引 |
方法3 | 快捷方便 | 用户应警惕外部恶意宏 |
即使对VBA新手来说也很容易 |
Excel被损坏
众所周知,MS Excel有时会崩溃,从而破坏当前文件的保存。因此,强烈建议使用外部强大的电源Excel修复工具,如DataNumen Outlook Repair。这是因为Excel中的自我恢复功能被证明经常失败。
作者简介:
Shirley Zhang是DataN万博ManBetX手机下载umen, Inc.的数据恢复专家,该公司是数据恢复技术的世界领导者,包括sql修复并展望维修软件产品。万博体育app官方网下载欲了解更多信息,请访问www.circareview.com
非常感谢!极有帮助
非常感谢!
使用新的O365函数,您可以直接使用=转置(ListSheets)。
如果您还需要表号,=SEQUENCE(COLUMNS(ListSheets))甚至是动态的。
谢谢,方法3节省了我几个小时的ctrl - c / ctrl - v
非常感谢你分享这三种选择。我不同意那位把这篇文章称为“白痴”的用户。批评别人很容易,但帮助别人却需要真正的努力。谢谢你的帮助!
这太蠢了——从excel文件中制作一个该死的PDF文件——你会得到每个人的名字和PDF文件。
方法二很管用,谢谢
我如何让它在当前工作簿中制作/更新标签,而不是创建一个新的工作簿?
太棒了!方法二很有效。说明很清楚,截图也很有帮助。没有好转。
我还得到了#BLOCKED!选项2的错误信息,我无法找到一种方法来“解除阻塞”
谢谢,帮我省了不少事
方法2在Excel 2021中无效!
注释方法2不需要一个列表,如果你把=INDEX(ListSheets,A1)替换为=INDEX(ListSheets,Row(A1))。
方法2还需要您保存为宏启用的工作簿,因为它使用Excel 4.0遗留功能
真的很感激。如此快速地使用VBA从“低知识”!
谢谢,我如何使结果输出在我的当前文件上的标签“标签索引”已经存在,更好地变成一个表?
太棒了!!感谢VBA代码!!!!!!节省了我一个小时的头脑麻木的工作!
我得到一个错误#BLOCKED!当我尝试方法2(用公式列出)。我想在工作簿中使用工作表名称,因此VBA方法没有帮助。
嗨,通过Excel VBA的列表工作得很好,请建议什么改变代码,让它开始在第4行,列B(索引在B4,名称在C4)
谢谢你!这为我节省了很多时间,我真的很感谢你与大家分享!
顺便说一句,有没有一种方法只打印可见的工作表(而不是隐藏的)?我知道我要求很多,但这可能会让公式更好
恭喜你,非常感谢!!
谢谢你的宏!这招很管用
这太神奇了。非常感谢你的文章!你帮我省了好多工作。