vba - 在 VBA 中使用工作表索引而不是名称

标签 vba excel indexing

我想从我的第一个工作表中复制一些内容,将它们粘贴到一个新工作表中,然后删除第一个工作表并将新的(唯一的)工作表重命名为 Sheet1。但是我永远不知道创建第二张表时会命名什么。大多数时候,它将是 Sheet2,但我不能指望它。这是仅从创建执行此操作的宏中获取的代码,但它使用的是在此实例中创建的工作表名称。我想改用工作表的索引,但不知道语法:

    Columns("A:D").Select
    Selection.Copy
    Sheets("Sheet2").Select
    ActiveSheet.Paste
    Sheets("Sheet1").Select
    Application.CutCopyMode = False
    ActiveWindow.SelectedSheets.Delete
    Sheets("Sheet2").Select
    Sheets("Sheet2").Name = "Sheet1"

那么“Sheet2”在哪里...我该如何制作它才能使用第二张纸,而不一定是名为 Sheet2 的纸?

谢谢。

最佳答案

Worksheets(2) 是引用第二张纸的方式。

Worksheets(Worksheets.Count) 到最后一个。

像这样尝试:

Debug.Print Worksheets(Worksheets.Count).name

关于vba - 在 VBA 中使用工作表索引而不是名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46956896/

相关文章:

excel - VBA Excel 用户窗体。如何判断哪个图片被点击了

ms-access - 如何修复 "out of stack space"错误?

vba - 使用 VBA 在 Word 2010 页眉中插入两个字段

excel - 将 vba 查找和替换限制为事件工作表

vba - MS Excel 2010 - 当放置在其他 VBA 中时,使用 Abs() 的计算停止工作

algorithm - 如何跟踪/颜色分离使用 perlin 噪声生成的形状?

vba - 使用vba根据Excel中的单元格值将数据拆分为多个工作簿

C# - 如何将单个 Excel 工作表从一个工作簿复制到另一个工作簿?

algorithm - 寻找中等强度的哈希函数

sql-server-2005 - 在 SQL Server 2005 中对 PDF 文件使用全文搜索