Intercalar datos de columnas en excel

Tengo muchos datos en 3 columnas, en la primera un numero, en la segunda el nombre y apellido, en la tercera la dirección.

        columna 1              columna 2                    Columna 3

 1 )        547                 Juan Mengano               La Paz 5865

 2)         652                 Pedro Fulano                   Brasil    2547

Necesito intercalar los datos de la columna 3 bajo los nombres de la columna 2 en filas nuevas insertadas

1)          547                 Juan Mengano 

2)                                  La Paz 5865        

3)          652                 Pedro Fulano   

4)                                  Brasil    2547   

Quedarían solo 2 columnas con datos, las que tienen los numero y las que tienen los nombres y direcciones.

1 respuesta

Respuesta
1

Prueba la siguiente macro.

Pon tus datos en la Hoja1, los resultados quedarán en la Hoja2

Sub Intercalar_datos()
  Dim a As Variant, b As Variant
  Dim i As Long, j As Long
  '
  a = Sheets("Hoja1").Range("A1:C" & Sheets("Hoja1").Range("A" & Rows.Count).End(3).Row).Value2
  ReDim b(1 To UBound(a) * 2, 1 To 2)
  '
  For i = 1 To UBound(a)
    j = j + 1
    b(j, 1) = a(i, 1)
    b(j, 2) = a(i, 2)
    j = j + 1
    b(j, 2) = a(i, 3)
  Next
  '
  Sheets("Hoja2"). Range("A1"). Resize(UBound(b), 2).Value = b
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas