Помогите, пожалуйста. Массив большой, высота заранее неизвестна, расположение столбцов одинаковое. В исходнике "Лист1" в столбце А нужно найти заявки из списка "Лист2" и заменить, например, исходный текст на листе1 в столбцах D и E на текст определенный списком на листе2 в столбцах B и C.
Надеюсь, что понятно объяснила, что хочу. Заранее благодарю за помощь!
Sub ReplaceOrderData()
Dim r&, rg As Range
With Worksheets("Лист2")
Worksheets("Лист1").Activate: r = 2
Do While Not IsEmpty(.Cells(r, 1))
Set rg = Columns(1).Find(.Cells(r, 1), _
, xlValues, xlWhole, SearchFormat:=False)
If Not rg Is Nothing Then
rg.Offset(0, 3).Resize(1, 2) = .Cells(r, 2).Resize(1, 2).Value
End If
r = r + 1
Loop
End With
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
Ігор Гончаренко, спасибо огромное, это чудо. Только еще помогите скорректировать, а то сама туплю... Табличная часть в исходнике всегда начинается с 10 строки, столбца B, номер заявки находится в столбце K
Ігор Гончаренко, спасибо, извините, что сразу не совсем верно сформулировала задачу, но возможно ли еще чуток доработать? сейчас на листах столбцы в одинаковой последовательности, и макрос подставляет в исходник значения двух столбцов с листа2. я хотела на листе2 указывать только столбцы необходимые к замене и в исходнике они будут непоследовательны. можно, например, при нахождении заявки в списке заменить в исходнике только значения столбцов N и Q, на значения столбцов B и C из списка?