Перенос данных между файлами аналогично =ВПР

Автор Five, 05.10.2011, 13:08

« назад - далее »

Five

Помогите, пожалуйста с макросом (с VBA у меня туго). В приложенном примере работает ВПР с листа на лист. В реальности не два листа, а два файла. Необходимо, чтобы тоже самое делал макрос, запускаемый в файле-приемнике. Запускаем макрос, он запрашивает имя файла- источника, находит соответствия и переносит данные в файл-приемник. Если в ячейке приемника уже записано какое-то значение, то переносимое значение суммируется с существующим, а не заменяет его.

Заранее благодарю.

Five

Код VBA:

Код:
Private Sub CommandButton1_Click()
For i = 1 To Range("B4:B47").Rows.Count
  For j = 1 To Workbooks("Праис 2").Worksheets(1).Range("B4:B39").Rows.Count
   If Range("B4:B47").Cells(i, 1) = Workbooks("Праис 2").Worksheets(1).Range("B4:B39").Cells(j, 1) Then
   Range("E4:E47").Cells(i, 1) = Workbooks("Праис 2").Worksheets(1).Range("C4:C39").Cells(j, 1)
   End If
  Next j
Next i
MsgBox ("Готов!")
End Sub

Подошел макрос пользователя Saken из темы https://forum.msexcel.ru/empty-t4850.0.html;msg28864 . За что огромное ему спасибо. Уважаемые корифеи, есть ли возможность выбирать файл-источник (Прайс 2) в диалоге в начале работы макроса, не задавая его в самом макросе ? И как сделать, чтобы перенесенные из источника данные суммировались с теми, что уже есть в соответствующих ячейках файла-приемника, а не замещались ?


Заранее спасибо.