Como puedo modificar 2 bases de datos al mismo tiempo

Tengo 2 bases de datos en distintos excel, lo que quiero hacer es que mediante a un formulario ingrese datos al libro1 y que al mismo tiempo ingresen esos datos en el libro 2 pero en columnas distintas a las del libro 1, por ejemplo si yo ingreso NOMBRE en A1 del libro1 este dato se ingrese en el libro2 pero en la celda D1 . Tambien que los datos que modifique en libro1 tambien lo hagan en libro2.

1 respuesta

Respuesta
1

H   o la:

Te voy a poner un ejemplo utilizando la última macro que te envié:

Private Sub CommandButton2_Click()
'Por.Dante Amor
    Dim i, libro2, lib, existe, l2, h2, fila
    '
    libro2 = "libro2.xlsx"      'nombre del libro con todo y extensión
    libro3 = "libro3.xlsx"      'nombre del otro libro con todo y extensión
    '
    If ListBox1.ListCount = 0 Then
        MsgBox "No hay registros a pasar"
        Exit Sub
    End If
    existe2 = False
    existe3 = False
    For Each lib In Workbooks
        If LCase(lib.Name) = LCase(libro2) Then
            existe2 = True
        End If
        If LCase(lib.Name) = LCase(libro3) Then
            existe3 = True
        End If
    Next
    If existe2 = False Then
        MsgBox "El libro 2 no está abierto"
        Exit Sub
    End If
    If existe3 = False Then
        MsgBox "El libro 3 no está abierto"
        Exit Sub
    End If
    '
    Set l2 = Workbooks(libro2)
    Set h2 = l2.Sheets(1)
    fila = h2.Range("E" & Rows.Count).End(xlUp).Row + 1
    'h2.Range("A" & fila & ":I" & Rows.Count).ClearContents
    For i = 0 To ListBox1.ListCount - 1
        H2.Cells(fila, "A") = ListBox1.List(i, 0)
        H2.Cells(fila, "D") = ListBox1.List(i, 1)
        H2.Cells(fila, "E") = ListBox1.List(i, 2)
        H2.Cells(fila, "G") = ListBox1.List(i, 3)
        H2.Cells(fila, "I") = ListBox1.List(i, 4)
        fila = fila + 1
    Next
    '
    'Actualizar el otro libro
    Set l3 = Workbooks(libro3)
    Set h3 = l3.Sheets(1)
    fila = h3.Range("E" & Rows.Count).End(xlUp).Row + 1
    'h2.Range("A" & fila & ":I" & Rows.Count).ClearContents
    For i = 0 To ListBox1.ListCount - 1
        H3.Cells(fila, "A") = ListBox1.List(i, 0)
        H3.Cells(fila, "D") = ListBox1.List(i, 1)
        H3.Cells(fila, "E") = ListBox1.List(i, 2)
        H3.Cells(fila, "G") = ListBox1.List(i, 3)
        H3.Cells(fila, "I") = ListBox1.List(i, 4)
        fila = fila + 1
    Next
    MsgBox "Datos exportados"
End Sub

En la macro estoy poniendo el "libro2" y el "libro3", lo que hace la macro es actualizar primer el libro2 y después el libro3.

Revisa si puedes adecuar el ejemplo a lo que tienes. Si necesitas ayuda, tienes que ser más específica con los datos, es decir, cómo se llaman los libros, cómo se llaman las hojas, filas, columnas, etc, etc.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas