Copiar Columnas de un Excel a Otro por Macros

Tengo 2 archivos excel:

Excel 1, tiene las siguientes columnas:

Código Nombre Edad

1           juan         28

2           jose          30

Excel 2, tiene las siguientes columnas:

Codigo 1   Codigo 2  Codigo 3  Nombre 1  Nombre 2 Nombre 3

34                36             38           luis             roberto      rafael

35               37             39             víctor          yanina       michel   

Lo que deseo es copiar los datos del excel 2 al excel 1, quedaría así:

Código Nombre Edad

1           juan         28

2           jose          30

34        luis            

35 víctor

Etc. Como pueden observar he copiado los datos de la columna código 1 con su respectivo nombre 1. Luego copiaría el código 2 con su nombre 2.

Lo que yo opino es que primero debo ubicar la columna código 1 del Excel 2 y copiar todo su contenido en mi columna código 1 del Excel 1. Y hacer lo mismo con los demás.

Alguna idea de como ubicar cierta columna y copiar su contenido.

1

1 respuesta

Respuesta
1

Te anexo la macro.

Cambia en la macro:

El nombre de tu "libro2"

Los nombres de tus hojas, del libro1 y del libro2

Los datos supongo que inician en la fila2 y en la columna A

Pon la macro en el libro1

Debes tener los 2 libros abiertos.

Sub CopiarColumnas()
'Por.Dante Amor
    Set l1 = ThisWorkbook
    Set h1 = l1.Sheets("Hoja1")
    Set l2 = Workbooks("Libro2.xlsx")
    Set h2 = l2.Sheets("Hoja1")
    '
    u1 = h1.Range("A" & Rows.Count).End(xlUp).Row + 1
    For i = 2 To h2.Range("A" & Rows.Count).End(xlUp).Row
        H2.Cells(i, "A"). Copy h1. Cells(u1, "A")
        H2.Cells(i, "D"). Copy h1. Cells(u1, "B")
        u1 = u1 + 1
        H2.Cells(i, "B"). Copy h1. Cells(u1, "A")
        H2.Cells(i, "E"). Copy h1. Cells(u1, "B")
        u1 = u1 + 1
        H2.Cells(i, "C"). Copy h1. Cells(u1, "A")
        H2.Cells(i, "F"). Copy h1. Cells(u1, "B")
        u1 = u1 + 1
    Next
End Sub

Saludos.Dante Amor

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas