Запустить макрос в другой только что открытой книге - PullRequest
0 голосов
/ 03 апреля 2020

Моя проблема похожа на другие проблемы, но не совсем. Обходной путь заключается в том, что исходный файл остается неизменным.

У меня есть файлы A и B. Макрос в A должен:

  1. Открыть B с макросом в A (ОК)
  2. Выполнить макрос в A, который выполняет все вычисления в B (поэтому, если тот же макрос будет выполняться в B, проблем не будет)
  3. Копировать результаты из B в A
  4. Закрыть B без сохранения
  5. L oop для разных B и скопировать все в A

Возможно ли это или я должен заняться этим другим способом?

1 Ответ

0 голосов
/ 03 апреля 2020

Basi c пример того, как редактировать ячейки в другой книге и скопировать что-то оттуда в эту книгу:

'open another workbook
Dim wbB As Workbook
Set wbB = Workbooks.Open(FileName:="C:\Temp\WorkbookB.xlsx", ReadOnly:=True)

'change something in that other workbook
wbB.Worksheets("SheetInWorkbookB").Range("A1").Value = "I changed it"

'copy from that other workbook into this workbook
wbB.Worksheets("SheetInWorkbookB").Range("A1:A10").Copy Destination:=ThisWorkbook.Worksheets("Result").Range("A1")

'close that other workbook without saving
wbB.Close SaveChanges:=False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...