Макрос Excel: ошибка при вставке - перемещение вниз на 10 строк - вставка - 10 строк - вставка и т. Д. - PullRequest
0 голосов
/ 25 августа 2010

Я пытаюсь скопировать данные из трех рабочих книг (по одной за раз) из одного диапазона (A4: A8) и вставить их в новую рабочую книгу.Единственный улов - я пытаюсь заставить часть вставки двигаться вниз на 10 строк в каждом цикле.

Я получаю сообщение об ошибке в строке PasteSpecial.Я не уверен, почему?

(я новичок в макросах Excel, но я проверяю)

Любые указания / указатели очень ценятся.* Большое спасибо

Майк.

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

1 Ответ

2 голосов
/ 25 августа 2010

Исправлено несколько проблем 'Смотрите комментарии

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...