将一系列单元格复制到通过单元格命名的多个工作表中

时间:2015-10-14 21:24:39

标签: excel vba excel-vba runtime-error series

感谢您抽出宝贵时间查看我的VBA宏。我对这个宏的目标是将一行单元格(e7:i7)复制到一个复制的工作簿中,该工作簿具有粘贴在工作表中并通过一系列单元格命名的模板(c7)。然后使用(c8)作为其名称,用下一行单元格(e8:i8)重复该过程。

我有模板工作表重复工作,我有工作表命名工作。我的问题是将单元格从“工作表”复制到新命名的工作表,该工作表使用(c7)系列作为其名称。

我正在

  

“运行时错误'9':   下标超出范围

感谢您的帮助,因为这是我的第一个VBA项目。

Sub NEWSAVINGSTEST1()
'
' NEWSAVINGSTEST1 Macro
'
Dim ws1 As Worksheet
Set ws1 = ThisWorkbook.Worksheets("NEWSAVINGS")

Dim MyCell As Range, MyRange As Range

Set MyRange = Sheets("Master").Range("c7")
Set MyRange = Range(MyRange, MyRange.End(xlDown))

For Each MyCell In MyRange
Sheets("NEWSAVINGS").Select
Sheets("NEWSAVINGS").Copy After:=Sheets(Sheets.Count) 'creates a new worksheet
'ws1.Copy ThisWorkbook.Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = MyCell.Value

ThisWorkbook.Worksheets(i).Select ("Master") ' just select the sheet
Source.Copy
Set MyRange2 = Sheets("Master").Range("e7:l7")
Set MyRange2 = Range(MyRange, MyRange.End(xlDown))
ActiveSheet.Range("d11").Select
ActiveSheet.Paste

Next MyCell

'
End Sub

1 个答案:

答案 0 :(得分:0)

我想可能是以下内容:

ThisWorkbook.Worksheets(i).Select ("Worksheet")

你真的想要这样的东西:

ThisWorkbook.Worksheets(Sheets.Count).Select