Страницы: 1
RSS
Подставить значения характеристик со второго листа в соответствующие им столбцы
 
Добрый вечер!
Необходимо подставить значения характеристик со второго листа на первый лист в соответствующие им столбцы
Заранее благодарен.
 
Макрос в стандартный модуль, запускать при активном листе Лист1
Код
Sub Podstava()
Dim i As Long
Dim iLastRow As Long
Dim j As Long
Dim FoundCell As Range
   iLastRow = Cells(Rows.Count, "A").End(xlUp).Row
 With Worksheets("Лист2")
  For i = 2 To iLastRow
   For j = 2 To 10   'вместо 10 подставить номер последнего столбца
    Set FoundCell = .Rows(i).Find(Cells(1, j), , xlValues, xlPart)
     If Not FoundCell Is Nothing Then
       Cells(i, j) = Split(.Cells(i, FoundCell.Column), "|")(1)
     End If
   Next
  Next
 End With
End Sub
 
Вариант с PQ:
Код
let
    from = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
    unpiv = Table.UnpivotOtherColumns(from, {"Столбец1"}, "Атрибут", "Значение"),
    name = Table.RenameColumns(unpiv,{{"Столбец1", "Название"}}),
    del = Table.RemoveColumns(name,{"Атрибут"}),
    split = Table.SplitColumn(del, "Значение", Splitter.SplitTextByEachDelimiter({"|"}), {"характеристика", "значение"}),
    list = List.Skip(Table.ColumnNames(Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content]),1),
    to = Table.Pivot(split, list, "характеристика", "значение")
in
    to
Соблюдение правил форума не освобождает от модераторского произвола
 
Привет!
Во вложении.
Сравнение прайсов, таблиц - без настроек
 
Всем большое спасибо!!! Задача решена!!!
Страницы: 1
Наверх