Я хочу прочитать книгу и скопировать некоторые ячейки в другую книгу. Целью кода является копирование ячеек из разных листов из одного файла в другой.VBA - Активировать открытую книгу
Для этого предлагает я создал этот код:
Sub processCopy(file)
'Abrir documento
Workbooks.Open Filename:=file, UpdateLinks:=0
cantn = ThisWorkbook.Sheets.Count
cantv = Sheets.Count - 5
cantn = cantn - 4
'Recorrer los libros del documento abierto
For i = 1 To (Sheets.Count - 5)
'Obtener nombre del libro seleccionado
nombre = Sheets(i + 2).Name
'Filtrar los libros no necesarios
If nombre <> "Instructions" And nombre <> "Executive Summary" And nombre <> "Process Update" And nombre <> "Template" And nombre <> "Notes" Then
If cantv >= cantn Then
ThisWorkbook.Sheets(3).copy after:=ThisWorkbook.Sheets(cantn + 2)
cantn = cantn + 1
ThisWorkbook.Sheets(cantn + 2).Name = nombre
ElseIf nombre <> ThisWorkbook.Sheets(cantn + 2).Name Then
ThisWorkbook.Sheets(cantn + 2).Name = nombre
End If
Workbooks.Open Filename:=file, UpdateLinks:=0
ActiveWorkbook.Worksheets(nombre).Activate
ActiveWorkbook.Sheets(nombre).Range("C4:O23").Select
Selection.copy
ThisWorkbook.Sheets(nombre).Range("C4:O23").PasteSpecial
После завершения процесса в первом листе, я сравниваю, если в новом файле есть любой другой лист, чтобы начать этот процесс. Если нет (всегда), я создаю новый лист, чтобы начать с процесса копирования и вставки, но функции ThisWorkbook и ActiveWorkbook работают на одном листе (копирование и вставка из той же книги), а не из одного файла в другой.
Вот почему, я открываю первую книгу, но когда процесс копирования и вставки отделки, появляется следующее сообщение:
Что я могу сделать, чтобы решить эту проблему это?
Спасибо за все