Ребят подскажите пожалуйста! Есть две книги "Книга1" и "Книга2". Необходимо сравнить столбец "серийный №" в двух книгах и при совпадении записать значение "Книга2" столбец "Место нахождение" в "Книга1" столбец "Место нахождение" т.е проще говоря сменить адреса место нахождение принтеров на новые)) список очень большой поэтому искать принтер по серийному номеру и прописывать новый адрес очень нудно) Можно ли это сделать с помощью макроса или кнопки? [moder]Закрыто. Дублирование[/moder]
Ребят подскажите пожалуйста! Есть две книги "Книга1" и "Книга2". Необходимо сравнить столбец "серийный №" в двух книгах и при совпадении записать значение "Книга2" столбец "Место нахождение" в "Книга1" столбец "Место нахождение" т.е проще говоря сменить адреса место нахождение принтеров на новые)) список очень большой поэтому искать принтер по серийному номеру и прописывать новый адрес очень нудно) Можно ли это сделать с помощью макроса или кнопки? [moder]Закрыто. Дублирование[/moder]Артур
Public Sub channge() Dim w1 As Workbook Dim w2 As Workbook Dim lastnum1 As Integer, lastnum2%, i%, j% Set w1 = ActiveWorkbook fileToOpen = Application.GetOpenFilename("All Files (*.*),*.*") If fileToOpen = False Then Exit Sub Workbooks.Open (fileToOpen) Set w2 = ActiveWorkbook lastnum1 = w1.Sheets("Лист1").Range("A1").SpecialCells(xlLastCell).Row lastnum2 = w2.Sheets("Лист1").Range("A1").SpecialCells(xlLastCell).Row For i = 3 To lastnum1 For j = 3 To lastnum1 If w1.Sheets("Лист1").Cells(i, 3) = w2.Sheets("Лист1").Cells(j, 3) Then w1.Sheets("Лист1").Cells(i, 5) = w2.Sheets("Лист1").Cells(j, 5) Exit For End If Next j Next i w2.Close End Sub
[/vba]
Можно что-то типа такого [vba]
Код
Public Sub channge() Dim w1 As Workbook Dim w2 As Workbook Dim lastnum1 As Integer, lastnum2%, i%, j% Set w1 = ActiveWorkbook fileToOpen = Application.GetOpenFilename("All Files (*.*),*.*") If fileToOpen = False Then Exit Sub Workbooks.Open (fileToOpen) Set w2 = ActiveWorkbook lastnum1 = w1.Sheets("Лист1").Range("A1").SpecialCells(xlLastCell).Row lastnum2 = w2.Sheets("Лист1").Range("A1").SpecialCells(xlLastCell).Row For i = 3 To lastnum1 For j = 3 To lastnum1 If w1.Sheets("Лист1").Cells(i, 3) = w2.Sheets("Лист1").Cells(j, 3) Then w1.Sheets("Лист1").Cells(i, 5) = w2.Sheets("Лист1").Cells(j, 5) Exit For End If Next j Next i w2.Close End Sub