Hacer un respaldo con algunas tablas

Buenos días Sir Drake, me gustaría saber si se puede hacer algún backup de access pero de unas determinadas tablas, estas tablas siempre van a ser las mismas. Hasta ahora puedo hacer backups de toda la base de datos, pero quería hacer un backup solamente de 4 tablas y no de las 7 que tengo ahora.
Muchas gracias por tu ayuda.

1 Respuesta

Respuesta
1
Bueno aquí tienes como se haría, solo te falta terminarlo con los nombres de tus tablas.
'#### INICIO CODIGO ####
Private Sub Comando0_Click()
On Error GoTo Err_Comando0_Click
'con la siguiente linea crearias una BD limpia y luego solo tendrias que pasarle la ruta.
'DBEngine.CreateDatabase "c:\MiBackup.mdb", dbLangSpanish
ruta = CurrentProject.Path & "\" & "Bd.mdb"
Dim dbs As Object, miTabla As AccessObject
Set dbs = Application.CurrentData
For Each miTabla In dbs.AllTables 'Con este bucle recorres todas las tablas de tu base de datos, incluidas unas de sistema que empiezan por "MSys" de ahí que tengas que poner la siguiente condición
'En el if ademas de filtrar las del sistema filtra las que quieras
If Left(miTabla.Name, 4) <> "MSys" And miTabla.Name = "tabla1" Then
Dim Nombre As String
Nombre = miTabla.Name
MsgBox (Nombre)
DoCmd.TransferDatabase acExport, "Microsoft Access", _
ruta, acTable, miTabla.Name, _
miTabla.Name & "-" & Date
End If
Next miTabla
Exit_Comando0_Click:
    Exit Sub
Err_Comando0_Click:
    MsgBox Err.Description
    Resume Exit_Comando0_Click
End Sub
'#### FIN CODIGO ####
Un saludo espero te sea de ayuda
Muchísimas gracias por tu respuesta, he conseguido con el código que me has puesto que me haga el backup, pero sin ninguna tabla, porque estoy un poco perdido, las tablas serían 3 (AddCrown, circuitos, locales) ¿Dónde las añado?.
Otra cosa que me sucede es que cuando el backup está hecho si le vuelvo a dar al botón me dice que la base de datos ya existe y no la reemplaza.
Espero que no sea mucho engorro.
Muchísimas gracias por tu ayuda
Hola otra vez, he resuelto casi todo el tema, lo único que no me queda claro es como tengo que hacer para añadir las tablas ya que ahora mismo solamente me añade una (la que cambio por tabla1 que pones en el ejemplo). Con esto lo tendría todo genial.
Si me puedes añadir en el ejemplo la forma de poner 3 tablas (AddCrown, locales, circuito) te lo agradecería muchísimo.
Un saludo
Hay lo tienes: Sustituye los nombres de las tres tablas por las que No quieres importar.
If Left(miTabla.Name, 4) <> "MSys"  Then
   If miTabla.Name <> "tabla1" Then
      If miTabla.Name <> "tabla2" Then
        If miTabla.Name <> "tabla3" Then
Dim Nombre As String
Nombre = miTabla.Name
MsgBox (Nombre)
DoCmd.TransferDatabase acExport, "Microsoft Access", _
ruta, acTable, miTabla.Name, _
miTabla.Name & "-" & Date
        End If
       End if
    End if
End if

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas