Aqui dicen como hacerlo con macros
<
Sub invertir()
'creado por d2enri 24-05-2011
Application.ScreenUpdating = False
row4 = 2 'fila que comienza
Do While Trim(Range("a" & row4).Value) <> Empty
Range("A" & row4).Copy
'columna que pasa los datos
Range("d2").Select
Selection.Insert Shift:=xlDown
row4 = row4 + 1
Loop
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "Proceso finalizado"
End Sub
Esto se sitúa en A2 copia y pega en D2 luego baja hasta A3 copia y se sitúa de nuevo en D2 insertando el dato y traslada el que estaba debajo.
Y así sucesivamente mientras encuentre datos en la columna A
Prueba y si necesitas cambiar rangos y no sabes como dime donde quieres los datos y te lo adapto
Si te sirve no olvides finalizar y puntuar la pregunta
Saludos >>
Los puntos los pide el eh... que yo no se hacerlo ... pero si te funciona me los puedes dar a mi y yo le paso la mitad :p