Преобразовать разделенные значения с уровнями иерархии в индивидуальные назначения

Преобразовать разделенные значения с уровнями иерархии в индивидуальные назначения

У меня есть список разграниченных пользователей и назначенных им уровней в иерархии. Я хотел бы иметь каждого пользователя в своей строке, но сохранить уровни, назначенные оригиналу.

Вот с чего я начну:

Пользователь 1-й уровень
[email protected];[email protected];[email protected] Регион 1

Вот чем я хотел бы закончить:

Пользователь 1-й уровень
[email protected] Регион 1
[email protected] Регион 1
[email protected] Регион 1

У меня сотни строк и несколько уровней иерархии, поэтому простое размещение текста в столбцах и c/p занимает слишком много времени.

Я бы предпочел решение без VBA, если это возможно.

решение1

С Office 365:

=LET(
    us,A2:A201,
    hr,B2:D201,
    ttl,A1:D1,
    VSTACK(ttl,DROP(REDUCE("",us&"|"&BYROW(hr,LAMBDA(z,TEXTJOIN("{",FALSE,z))),LAMBDA(a,b,LET(c,TEXTAFTER(b,"|"),VSTACK(a,HSTACK(TEXTSPLIT(TEXTBEFORE(b,"|"),,";"),DROP(TEXTSPLIT(REPT(c&"}",ROWS(TEXTSPLIT(b,,";"))),"{","}"),-1)))))),1)))

По сути, он разделит текст на ;в usдиапазоне (Пользователь). Затем он повторит значения по строкам в hrдиапазоне (Иерархия). Затем он складывает их горизонтально.

Затем REDUCE складывает выходные данные каждой строки вертикально. Наконец, мы складываем ttlдиапазон (title).

введите описание изображения здесь

решение2

  1. Выберите диапазон данных и перейдите в INSERTменю

введите описание изображения здесь

  1. Выберите TABLEи отметьте/снимите отметки My Table Has Headersпо мере необходимости.

введите описание изображения здесь

  1. Выберите диапазон данных, перейдите в DATAменю и нажмитеFrom Table/Range

введите описание изображения здесь

  1. В Power Query Editor, выберите column1, щелкните на Split Column, и щелкните на By Delimiter.

введите описание изображения здесь

  1. Введите ;свой собственный разделитель и нажмите okay.

введите описание изображения здесь

  1. Выберите Column2, затем раскройте список Unpivot Columnsи выберите Unpivot Other Columns.

введите описание изображения здесь

  1. Выберите Attributeстолбец.

введите описание изображения здесь

  1. Щелкните правой кнопкой мыши по столбцу и выберитеRemove

введите описание изображения здесь

  1. В HOMEменю нажмитеClose and Load

введите описание изображения здесь

Связанный контент