Страницы: 1
RSS
Склеивание текста ячеек, если в соседнем столбце одинаковое имя
 
Добрый день
Прошу совета:
Имеется результат преобразования данных из xml файла с несколькими уровнями вложенности, сведенный в табличную форму книги excel
Как можно увидеть в примере(во вложении), данные в столбцах A,B,C, F,G,H - имеют дубликаты. В тоже время, данные в столбцах D,E - всегда разные.
Таких дубликатов может быть много.
Необходимый результат: вывести в свободный столбец содержимое столбцов D,E в виде строки так, чтобы выводимое содержимое столбцов D,E соответствовало конкретному ФИО
То есть, из нескольких строк по типу:
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
47.11
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
47.22
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
47.81
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
56.10
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
68.20
получить примерно такое :
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ
47.11
47.22
47.81
56.10
68.20
То есть, чтобы одному ФИО соответствовала одна строка
Прошу совета, буду рад, если кто-то подскажет, как это можно сделать
 
Здравствуйте! Вариант решения во вложенном файле
 
В вашем задании написано что надо вывести содержимое столбцов D,E  а потом
получить примерно такое
ЧЕРНУШЕНКО ВАСИЛЬ ВАСИЛЬОВИЧ 47.11 47.22 47.81 56.10 68.20
Это содержимое столбцов А и D. Вы сами не понимаете что вам надо и хотите чтоб другие поняли и помогли
 
вариант на PQ
подробнее в приёмах
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    result = Table.Group(Источник, {"name"}, {"grp", each Text.Combine([kvedcode], " ")})
in
    result


название темы предлагаю такое же, как в приемах: "Склеивание текста по условию"
 
Код
=УНИК(A2:A188)

Код
=ОБЪЕДИНИТЬ(", ";;ЕСЛИ(A2:A188=J2;D2:D188;""))
 
Код
Sub test()
Dim arr, dic As Object, i&
   Columns("I:J").ClearContents
   Set dic = CreateObject("Scripting.Dictionary"): dic.comparemode = 1
arr = Range("A2:D188").Value
  For i = 2 To UBound(arr)
    dic.Item(CStr(arr(i, 1))) = dic.Item(CStr(arr(i, 1))) & arr(i, 4) & ", "
  Next i
   Range("I1").Resize(dic.Count, 2) = Application.Transpose(Array(dic.keys, dic.Items))
End Sub

Результат в столбцах I и J
Страницы: 1
Наверх