如何使用VBA在Excel中复制连续的工作表

我search了关于如何将工作表复制到另一个工作簿的多篇文章。 在所有情况下,表单名称是已知的。

如果我在当前工作表中,如何创build一个将当前工作表和下两个连续工作表复制到新工作簿的vba。 工作表的名字每周都会更改,所以程序只需要select当前的工作表和下两页。 感谢您的帮助。

下面的代码将满足您的要求。 只要确保在运行时位于第三张工作表的最后一页。

Option Explicit Sub copyConsecutiveSheets() Dim x As Integer Dim k As Integer Dim j As Integer Dim b As String x = 1 k = ActiveSheet.Index ThisWorkbook.Sheets(k).COPY For j = 1 To 2 b = ActiveWorkbook.Name ThisWorkbook.Sheets(k + j).COPY After:=Workbooks(b).Worksheets(x) x = x + 1 Workbooks(b).Activate Next End Sub