Как разделить данные с разделителями на одну ячейку и повторить соседнюю ячейку для каждого элемента с разделенными данными? - PullRequest
0 голосов
/ 18 февраля 2019

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

    Current data looks something like this;

    Column1        | Column 2
    Application 1  | User1,User2,User3
    Application 2  | User1,User2,User3

    I want to get an output to be something like this;
    Column 1       | Column 2   
    Application 1  |  User 1
    Application 1  |  User 2
    Application 1  |  User 3
    Application 2  |  User 1
    Application 2  |  User 2
    Application 2  |  User 3

Я играл с индексным соответствием, VBA и т. Д. И терпел неудачу с треском.- Я не думаю, что какой-либо код, который я завершил на сегодняшний день, имеет отношение

1 Ответ

0 голосов
/ 18 февраля 2019

Вот очень простой подход:

Sub Reorg()
    Dim i As Long, N As Long, ap As String, arr, a
    Dim k As Long

    N = Cells(Rows.Count, "A").End(xlUp).Row
    k = 1

    For i = 1 To N
    ap = Cells(i, 1).Value
    arr = Split(Cells(i, 2).Value, ",")
        For Each a In arr
            Cells(k, 3).Value = ap
            Cells(k, 4).Value = a
            k = k + 1
        Next a
    Next i
End Sub

Для исходных данных в столбцах A и B :

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...