vba - 引用新添加的工作表

标签 vba excel

我想引用新添加的工作表。它们是通过循环添加的。

它们被命名为Sheet1Sheet2Sheet3等。我还有一个变量n,它等于创建 Sheet1 时等于 1,创建 Sheet2 时等于 2,创建 Sheet3 时等于 3,依此类推。

我的代码如下所示:

For i = 2 To 1000

If Worksheets("DATA").Cells(i, "A").Value <> "" And Worksheets("DATA").Cells(i, "A").Value <> "TOTAL" Then

Worksheets("Template").Cells(1, "C").Value = Worksheets("DATA").Cells(i, "B").Value
Worksheets("Template").Cells(2, "C").Value = Worksheets("DATA").Cells(i, "C").Value
Worksheets("Template").Cells(3, "C").Value = Worksheets("DATA").Cells(i, "A").Value
Worksheets("Template").Cells(5, "D").Value = Worksheets("DATA").Cells(i, "D").Value
Worksheets("Template").Cells(5, "E").Value = Worksheets("DATA").Cells(i, "E").Value

Sheets.Add

n = 0
n = n + 1

Worksheets("Template").Cells.Copy

Worksheets("Sheet & n").Range("A1").Paste 'Problem is in this line

Worksheets("Sheet" & n).Activate ' And in this line

    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .PrintTitleRows = ""
        .PrintTitleColumns = ""
    End With

我对标有注释的行有疑问。
我的问题是如何使用 n 变量引用 Sheet1Sheet2 等?

请耐心等待,因为我对 VBA 还很陌生。如果我的问题含糊或难以理解,请告诉我。
预先感谢您。

最佳答案

引号 "" 内的任何内容都将被视为字符串。

“Sheet & n”更改为“Sheet”&n

此外,您应该避免使用.ActivateINTERESTING READ

还有一件事:P

您无需激活工作表即可粘贴到其中。你可以用一行来完成。例如。

ThisWorkbook.Sheets("Sheet1").Range("A1:A5").Copy _
ThisWorkbook.Sheets("Sheet2").Range("A1")

关于vba - 引用新添加的工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19859526/

相关文章:

javascript - 单击下拉列表中的子 DIV

excel - VBA中的求和范围

vba - Excel VBA MultiPage - 获取页数

excel - 获取 PivotItem 的源范围

excel - excel中的部分匹配,匹配条件中的多个值以匹配列表

excel - 如果左侧单元格中满足条件,如何复制列值

excel - MS Excel VBA : Find cells that have a specific formula type

vba - Excel VBA : How to capture MsgBox response

用于按升序对 Excel 列进行排序并扩展选择的 VBA 代码?

vba - 当我使用按钮运行宏时,由于内存不足,excel 无法完成