Quisiera una macro para Transponer filas en columnas

Necesito una macro que haga lo sig.

Tengo la columna A con numero de tiendas y filas con los números de productos, necesito que se transponga la información para que me queden en columnas duplicando el numero de tiendas por el numero de artículos.

Tienda producto

1                 a,b,c,d,

2              d,b

Que quede:

1 a

1 b

1 c

1 d

2 d

2 b

1

1 respuesta

Respuesta
2

H o l a:

¿En cuál fila empiezan las tiendas?

¿Los productos los tienes en una misma celda separados por comas?

Y en dónde quieres el resultado, ¿puede ser en otra hoja?

Si es correcto todo lo anterior te anexo la macro.

Sub Transponer()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")    'Hoja con datos
    Set h2 = Sheets("Hoja2")    'Hoja con resultados
    n = 2                       'fila inicial
    '
    h2.Cells.ClearContents
    k = n
    For i = n To h1.Range("A" & Rows.Count).End(xlUp).Row
        pros = Split(h1.Cells(i, "B"), ",")
        For j = LBound(pros) To UBound(pros)
            h2.Cells(k, "A") = h1.Cells(i, "A")
            h2.Cells(k, "B") = pros(j)
            k = k + 1
        Next
    Next
    MsgBox "Proceso de trasnponer terminado", vbInformation, "TRANSPONER"
End Sub

Cambia en la macro, en estas líneas por tus datos:

    Set h1 = Sheets("Hoja1")    'Hoja con datos
    Set h2 = Sheets("Hoja2")    'Hoja con resultados
    n = 2                       'fila inicial

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas