Прошу Вашей помощи, столкнулся с тем, что range.find выдает не то, что хотелось бы. Нужно было подтянуть по названию фирмы (4 строка 1 листа и 1 столбец второго листа) три значения на первый лист (со второго). И по первой же фирме подтянулись не те значения(
Прошу Вашей помощи, столкнулся с тем, что range.find выдает не то, что хотелось бы. Нужно было подтянуть по названию фирмы (4 строка 1 листа и 1 столбец второго листа) три значения на первый лист (со второго). И по первой же фирме подтянулись не те значения(
Sub new_() ThisWorkbook.Sheets(1).Activate last_col_main = ActiveSheet.Cells(4, Columns.Count).End(xlToLeft).Column Set mainrang = ActiveSheet.Range(Cells(4, 1), Cells(4, last_col_main)) For i = 2 To ThisWorkbook.Sheets(2).Cells(Rows.Count, 1).End(xlUp).Row Set x = mainrang.Find(ThisWorkbook.Sheets(2).Cells(i, 1), , , xlWhole) If Not x Is Nothing Then needed = x.Column ThisWorkbook.Sheets(1).Cells(1, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 9) ThisWorkbook.Sheets(1).Cells(2, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 10) ThisWorkbook.Sheets(1).Cells(3, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 11) End If Next End Sub
Sub new_() ThisWorkbook.Sheets(1).Activate last_col_main = ActiveSheet.Cells(4, Columns.Count).End(xlToLeft).Column Set mainrang = ActiveSheet.Range(Cells(4, 1), Cells(4, last_col_main)) For i = 2 To ThisWorkbook.Sheets(2).Cells(Rows.Count, 1).End(xlUp).Row Set x = mainrang.Find(ThisWorkbook.Sheets(2).Cells(i, 1), , , xlWhole) If Not x Is Nothing Then needed = x.Column ThisWorkbook.Sheets(1).Cells(1, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 9) ThisWorkbook.Sheets(1).Cells(2, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 10) ThisWorkbook.Sheets(1).Cells(3, needed).Value = ThisWorkbook.Sheets(2).Cells(i, 11) End If Next End Sub