Unir dos hojas en excel

As) necesito me ayuden en lo siguiente: tengo dos hojas de cálculo, en cada una de ellas hay varios datos con un campo en común. Deseo saber los campos que son iguales.

1 Respuesta

Respuesta
1

Puedes poner ejemplos de esta forma

Hoja1

A B C D
1 dato dato dato dato
2 dato dato dato dato
3 dato dato dato dato

Hoja2

A B C D
1 dato dato dato dato
2 dato dato dato dato
3 dato dato dato dato

Resultado esperado

A B C D
1 dato dato dato dato
2 dato dato dato dato
3 dato dato dato dato

Y dónde quieres el resultado

Saludos. Dam

disculpa pero sigo sin entender, no se si lo que me escribe es una pregunta o quiere que le envíe datos de la manera en que me los presenta.

Para entender lo que quieres, tienes que explicarme con algunos ejemplos, solamente escribe los datos actuales de tus hojas y como le haces tu para identificar los campos iguales, y yo, en la medida de lo posible, hare automático esa identificación. Saludos. Dam

Estimado

La hoja 1 tiene los siguientes campos:

RUT PATERNO MATERNO NOMBRES AFP ISAPRE JORNADA CARGO BIENIO FEC.ING.

La hoja 2 tiene los siguientes campos:

APELLIDOS NOMBRES R.U.T. FECHADE CARGO FECHAN° ESPECIALIDAD

Lo que necesito es que de las dos hojas quede una tercera que me muestre todos los campos que me faltan en una u otra hoja.

Disculpa que insista, pero tienes que poner ejemplos. Solamente pon los datos que tienes en la hoja1 y dime exactamente en dónde están (A1, A2, B2, etc), simula que no están en la hoja2 y qué datos quieres poner en la hoja3 y exactamente en dónde los quieres. Después pones un ejemplo de los datos de la hoja2 (poniendo también exactamente en qué celdas está la información), simulas que no se encuentran en la hoja1 y me dices qué datos quieres poner en la hoja3 y exactamente en dónde los quieres.

Y dime de todos los campos de la hoja1 con cuál campo buscas en la hoja2.

Saludos. Dam

Hoja 1

A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

RUT PATERNO MATERNO NOMBRES AFP ISAPRE JORNADA CARGO BIENIO FEC.ING.

16478482-7 ALVARADO ESTURILLO GRACIA FERNANDA PRÓVIDA FONASA 44 00 19-01-2010

Hoja 2

A1 A2 A3 A4 A5 A6 A7 A8

APELLIDOS NOMBRES R.U.T. FECHADE CARGO FECHA N° ESPECIALIDAD

BASCUR VALDES DANIEL ISRAEL6.624.781-304-09-1956 NO DOCENTE 01-01-1994 44 PARADOCENTE

Hoja 3

A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

RUT AFP ISAPRE JORNADA CARGO BIENIO FEC.ING CARGO N° ESPECIALIDAD

Ojalá esto aclare mi consulta, gracias por la preocupación.

Creo que no me he explicado bien, tienes que ser lo mas detallado posible en tu explicación, es decir, en tu ej de la hoja1, cual de todos los datos que pusiste es el que debo comparar en la hoja2 y si no lo encuentro, exactamente que datos de la hoja1 me debo llevar a la hoja3, y asi, con el siguiente ejemplo de la hoja2, que dato debo buscar en la hoja1 y si no lo encuentro que datos me llevo a la hoja3.

Entre mas detallado y con ejemplos reales mas fácil sera entender.

Hola: el dato a comprar de la hoja 1 con la hoja 2 es el RUT, tengo los dos archivos si me dices a que correo puedo mandarlo a lo mejor eso aclararía más.

Perdona que te haya hecho trabajar con los ejemplos, te anexo la macro, con algunas consideraciones, pues no conozco los datos.

Indicaciones:

Deberás tener un libro de excel con 3 hojas: Hoja1 con los RUT en la columna A, la Hoja2 con los RUT en la columna C, y una Hoja3 limpia.

La macro buscará los RUT de la Hoja1 en la Hoja2 y los que no encuentre los pondrá en la Hoja3. También buscará los RUT de la Hoja2 en la Hoja1 y los que no encuentre los pondrá en la Hoja3.

Instrucciones para ejecutar macro
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Para ejecutarla presiona F5

Sub buscarut()
'busca y si no encuentra lo lleva a la hoja3
'por.Dam
Set h1 = Sheets("hoja1")
Set h2 = Sheets("hoja2")
Set h3 = Sheets("hoja3")
h3.Cells.ClearContents
h1.Select
j = 2
For i = 2 To h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row)
    h2.Select
    Range("C:C").Select
    Set Rango = Selection.Find(What:=h1.Cells(i, 1), After:=ActiveCell, _
    LookIn:=xlFormulas, LookAt:=xlPart, _
    SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=True, SearchFormat:=False)
        If Rango Is Nothing Then
            '"No se encontró "
            h1.Cells(i, 1).EntireRow.Copy Destination:= _
            h3.Cells(j, 1)
            j = j + 1
        End If
Next
h2.Select
For i = 2 To h2.Range("C" & h2.Range("C" & Rows.Count).End(xlUp).Row)
    h1.Select
    Range("A:A").Select
    Set Rango = Selection.Find(What:=h2.Cells(i, 3), After:=ActiveCell, _
    LookIn:=xlFormulas, LookAt:=xlPart, _
    SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=True, SearchFormat:=False)
        If Rango Is Nothing Then
            '"No se encontró "
            h2.Cells(i, 3).EntireRow.Copy Destination:= _
            h3.Cells(j, 1)
            j = j + 1
        End If
Next
End Sub

Saludos.Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas