如何在vba中打开工作表?

时间:2010-07-08 14:05:14

标签: vba worksheet

非常有趣的是,如果在Excel窗口中实际选择了工作表,则以下代码才有效。我真的想很快完成这个宏,但似乎无法弄清楚如何选择一个特定的工作表,以便它在excel中打开?非常感谢有人知道如何。我必须使用范围等。

sheet.Range(Cells(firstRow, 2).Address(False, False), Cells(lastRow, 50)).Select
With Selection
    .Copy
End With
sheet.Range(Cells(firstRow, 3).Address(False, False), Cells(lastRow, 51)).Select
With Selection
    .PasteSpecial xlPasteValuesAndNumberFormats
End With

2 个答案:

答案 0 :(得分:4)

您可以按名称或基于1的索引(数字 - 第一个工作簿,第二个,等等)激活工作表。无论哪种方式,语法都是相同的。

这将激活第3个工作表:

ActiveWorkbook.Sheets(3).Activate

这将激活名为stats的工作表:

ActiveWorkbook.Sheets("stats").Activate

当然,您无需在Excel窗口中实际选择工作表即可使用它。您的代码使用名为sheet的变量,我假设您已将其分配给活动工作表。您可以set sheet = ActiveWorkbook.Sheets("stats")而不是这样做,然后即使不在视图中也可以使用工作表。

答案 1 :(得分:1)

工作簿(x).Worksheets(x).Activate?