OlegSt
08-09-2012, 12:23
Добрый день, форумчане. У меня такая проблема:
Есть две книги с данными, price и data требуется сравнить наименования в двух книгах и обновить данные в книге data. Т.е. перенести цену и количество из price. Написал такой простенький макрос, но при запуске он ничего не считает. Подскажите, где я ошибся
Sub Press_me()
Dim CompareRange1 As Variant, CompareRange2 As Variant, x As Variant, y As Variant
Set CompareRange1 = Workbooks("Data.xls").Worksheets("Sheet").Range("A2:A1175")
Set CompareRange2 = Workbooks("Price.xls").Worksheets("TDSheet").Range("D15:D600")
Workbooks("Data.xls").Worksheets("Sheet").Range("M2:M1175").Value = 0
For Each x In CompareRange1
indicator = 1
For Each y In CompareRange2
If x = y Then
Workbooks("Price.xls").Worksheets("TDSheet").cell(y, 2) = Workbooks("Data.xls").Worksheets("Sheet").cell(x, 11)
Workbooks("Price.xls").Worksheets("TDSheet").cell(y, -1) = Workbooks("Data.xls").Worksheets("Sheet").cell(x, 12)
End If
Next y
Next x
End Sub
Есть две книги с данными, price и data требуется сравнить наименования в двух книгах и обновить данные в книге data. Т.е. перенести цену и количество из price. Написал такой простенький макрос, но при запуске он ничего не считает. Подскажите, где я ошибся
Sub Press_me()
Dim CompareRange1 As Variant, CompareRange2 As Variant, x As Variant, y As Variant
Set CompareRange1 = Workbooks("Data.xls").Worksheets("Sheet").Range("A2:A1175")
Set CompareRange2 = Workbooks("Price.xls").Worksheets("TDSheet").Range("D15:D600")
Workbooks("Data.xls").Worksheets("Sheet").Range("M2:M1175").Value = 0
For Each x In CompareRange1
indicator = 1
For Each y In CompareRange2
If x = y Then
Workbooks("Price.xls").Worksheets("TDSheet").cell(y, 2) = Workbooks("Data.xls").Worksheets("Sheet").cell(x, 11)
Workbooks("Price.xls").Worksheets("TDSheet").cell(y, -1) = Workbooks("Data.xls").Worksheets("Sheet").cell(x, 12)
End If
Next y
Next x
End Sub