Excelmacros:粘贴时出错 – 向下移动10行 – 粘贴 – 10行 – 粘贴等

我试图从三个工作簿(一次一个)复制相同范围(A4:A8)中的数据,并将其粘贴到新的工作簿中。 唯一的问题是我试图让粘贴部分每个循环下移10行。

我在PasteSpecial行上收到错误消息。 我不知道为什么?

(我是一个Excelmacros观新手,但我正在放弃)

任何指导/指针,不胜感激。

非常感谢

麦克风。

Dim TestWorkbook as variant, Dim mytest as variant TestWorkbook= array(“test1”, “test2”, “test3”) '3 source files i = 0 For Each mytest In TestWorkbook Workbooks.Open Filename:="S:\ExcelWork\" + TestWorkbook + "_Work.xls" Range("a4:a8").Copy ActiveWorkbook.Close Workbooks.Open Filename:="S:\Result_Workbook.xls" Range("l" & 5 + i).PasteSpecial Paste:=xlPasteValues `THE PROBLEM IS HERE i = i + 10 Next 

修复了几个问题“查看评论

 Sub a() Dim TestWorkbook As Variant Dim mytest As Variant Dim s As String TestWorkbook = Array("test1", "test2", "test3") i = 1 'Start with 1 Workbooks.Open Filename:="S:\Result_Workbook.xls" 'open only once For Each mytest In TestWorkbook s = mytest & ".xls" Workbooks.Open "c:\" & s Workbooks(s).Activate 'Remember to Activate Range("a4:a8").Copy ' Now paste properly Workbooks("Result_Workbook.xls").Worksheets("Sheet1").Range("l" & 5 + i).PasteSpecial Paste:=xlPasteValues ActiveWorkbook.Close SaveChanges:=False 'close after pasting i = i + 10 Next End Sub