Как выбрать несколько ячеек из рабочей книги и вставить в другую? - PullRequest
0 голосов
/ 15 января 2019

Я хотел бы выбрать определенные ячейки из одной рабочей книги и вставить их в определенном порядке в другую рабочую книгу. Пожалуйста, извините меня, поскольку это мой первый раз кодирование в Excel. Это, вероятно, будет выглядеть очень тривиально.

Workbooks("201103 COST BREAKDOWN  March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Copy _
  Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("D4,D8") 
Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("G5,G11").Value = _ 
  Workbooks("201103 COST BREAKDOWN  March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Value     

Я получаю

«Ошибка приложения или объекта»

Ответы [ 2 ]

0 голосов
/ 15 января 2019
  1. для первого клина (Копировать) удалить .Value в цели. Ожидается диапазон

  2. Я не думаю, что вы можете вставить в прерывистый диапазон. В этом случае вам потребуется 1 строка для каждой ячейки.

  3. То же самое относится и к вашей второй конструкции Range1.value = Range2.Value: нет прерывистого диапазона, поэтому вам придется сделать его 2 строками

0 голосов
/ 15 января 2019

Вы не можете .Copy, когда множественный выбор несмежных ячеек, таких как "D4,D8", необходимо выполнить действие копирования для D4, а затем еще одно для D8.

Но если вы хотите скопировать только значения (без форматирования), вы можете сделать:

Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("D4,D8").Value = _
  Workbooks("201103 COST BREAKDOWN  March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...