Comparar datos y copiar datos de una base a otra

Hola,
Mi problema es el siguiente, tengo una base de datos con los números de orden correlativos y el nombre de personas, faltándome otra serie de datos como calle, teléfono, dni, después tengo otra con los números alternos (no están todos los de la otra base), sus nombres, calle, teléfono y dni. Quisiera que comparase los números de orden de ambas bases y al encontrar una coincidencia de numero copiase los datos de esa persona (de la segunda base) en la primera base, así constantemente hasta copiar todos los datos existentes en la 2 base en la primera.
Os poco un ejemplo algo rudimentario para intentar explicar lo "complejo" de mi problema:
Base 1 (con datos que faltan)
Numero orden nombre alle teléfono dni que es donde falta.
           1 luis
           2 andres
           3 maría
           4 montse
Base 2 (con todos los datos)
Numero orden nombre calle teléfono dni
           2 andres sepulveda 222222 555556
           4 montse santander 888888 6666666
Gracias a todos y espero respuesta con gran impaciencia.
Un saludo.
Carmelo

1 respuesta

Respuesta
1
Tengo un ejemplo parecido a lo que necesitas espero te sirva hace la mayoría de lo que necesitas
Sub otros_libros()
   Dim Incremento_Fila As Integer, continuar As Boolean
   Dim Texto As String, n As Range
   Dim Resultado As String, Calificacion As String
   Dim Rango As String, Incremento As Integer
   Incremento_Fila = 0
   continuar = True
   Range("A1").Select                                           'inicializas la busqueda en A1 para tomar de referencia C1
    Do While continuar
        If Not IsEmpty(ActiveCell.Offset(Incremento_Fila, 2)) Then
            Texto = ActiveCell.Offset(Incremento_Fila, 2)
            Workbooks("Libro2.xls").Activate                              'activas el segundo libro debe de estar abierto con anterioridad
            Set n = Worksheets("Hoja1").Cells.Find(what:=Texto)    'buscas el error en base al codigo  
            If n Is Nothing Then
                Resultado = "Datos no asignados"
                Workbooks("Libro1.xls").Activate
                Sheets("Hoja1").Activate
                Incremento = Incremento_Fila
                Rango = "G" & Incremento + 1
                Range(Rango) = Resultado           
             Else
                fila = n.Row
                Calificacion = "B" & fila
                Workbooks("libro1.xls").Activate
                Sheets("Hoja1").Activate
                Incremento = Incremento_Fila
                Rango = "G" & Incremento + 1
                Range(Rango) = Calificacion
            End If
            Incremento_Fila = Incremento_Fila + 1
        Else
            continuar = False
        End If
    Loop
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas