¿Cómo convertir una celda (con datos separados por coma) en una columna?

¿Cómo convertir una celda (con datos separados por coma) en una columna?

Tengo datos como este:

 1245   S,M,L
 1356   S,M,L,XL

¿Cuál es la manera fácil de hacer esto?

1245    S
1245    M
1245    L
1356    S
1356    M
1356    L
1356    XL

Respuesta1

Probablemente esto sea más fácil de resolver usando VBA (en mi opinión). Aquí tienes una solución realmente sencilla que te ayudará a empezar. Probablemente necesitará cambiar dónde desea generar los datos.

Sub sizeSplitter()

Dim IDs As Range
    Set IDs = Selection 'Select your range of IDs

Dim rowCounter As Integer
    rowCounter = 2

For Each subRange In IDs

    Dim Sizes() As String

    Sizes = Split(subRange.Offset(0, 1).Value, ",")

    For i = LBound(Sizes) To UBound(Sizes)

        Cells(rowCounter, 4) = subRange.Value
        Cells(rowCounter, 5) = Sizes(i)

        rowCounter = rowCounter + 1

    Next

Next subRange

End Sub

Los datos finales pareceneste.

Para usarlo, resalte las ID con las que desea hacer esto. Además, se recomienda encarecidamente quitar del medio todos los datos que tenga en las columnas D y E, a menos que desee que se sobrescriban :)

información relacionada