如何使用来自数组的数据来处理工作表

我面临以下问题:

我已经编写了代码来读取一系列的数据,将数据存储在数组中,然后用数组中的名称插入工作表。 工作正常,代码如下:

For intZaehler = 0 To UBound(arrGliederungsebenen) - 1 ActiveWorkbook.Worksheets.Add(before:=ActiveWorkbook.Worksheets("7_Steuern")).Name = arrGliederungsebenen(intZaehler) 

arrGliederungsebenen已经存储了数据,我想用新的名字命名。 我保持简单的命名:

 arrGliederungsebenen(0) = 1 arrGliederungsebenen(1) = 1.2 arrGliederungsebenen(2) = 1.3 arrGliederungsebenen(3) = 2.1 and so forth 

接下来,我想将以前复制的模板粘贴到newley插入的表单中。 我现在面临的问题是如何正确处理新添加的表格:
不幸的是Activesheet.paste Destination:=Worksheets(arrGliederungsebenen(intZaehler).Name).Range("A1:0354").Offset(, 24 )不起作用。

任何人都可以告诉我,如何正确处理工作表的名称与数组中的数据?

我更喜欢将Worksheet对象设置为我正在添加的当前Worksheet (在我的代码Dim Sht As Worksheet ),这使得代码更短,更清洁,更易于debugging。

就这个例子而言,我使用Sheets("7_Steuern").Range("C7:E9")来复制和粘贴每张纸。

代码 (testing)

 Option Explicit Sub MultipleCreateSheets() Dim intZaehler As Integer Dim Sht As Worksheet Dim arrGliederungsebenen(3) As String arrGliederungsebenen(0) = 1 arrGliederungsebenen(1) = 1.2 arrGliederungsebenen(2) = 1.3 arrGliederungsebenen(3) = 2.1 For intZaehler = 0 To UBound(arrGliederungsebenen) - 1 Set Sht = ActiveWorkbook.Worksheets.Add(before:=ActiveWorkbook.Worksheets("7_Steuern")) Sht.Name = arrGliederungsebenen(intZaehler) Sheets("7_Steuern").Range("C7:E9").Copy Destination:=Sht.Range("A1:O354").Offset(, 24) Next intZaehler End Sub 

什么是。的.Name ? 对我来说似乎是虚假的。

Destination:=Worksheets(arrGliederungsebenen(intZaehler) .Name ).Range("A1:0354").Offset(, 24)

—>

 Destination:=Worksheets(arrGliederungsebenen(intZaehler)).Range("A1:0354").Offset(, 24)