'Crear un modulo bas y colocar las siguientes funciones Private Declare Function CopiaFichero Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long Function CopiaRespaldo(RutaOrigen As String, RutaDestino As String, NomOrig As String, NomDest As String) As Boolean On Error GoTo Err_Etiqueta_Error If Len(Dir(RutaDestino, vbDirectory)) = 0 Then MkDir (RutaDestino) End If CopiaFichero RutaOrigen & "\" & NomOrig, RutaDestino & "\" & NomDest, 0 CopiaRespaldo = True Exit_Etiqueta_Error: Exit Function Err_Etiqueta_Error: MsgBox "Aviso de error N: " & Err.Number & vbCrLf & _ "Descripción: " & Err.Description, vbCritical, "Error creando copia de Respaldo" CopiaRespaldo = False Resume Exit_Etiqueta_Error End Function 'Esta funcion de aqui abajo es para probar la copia de respaldo y la puedes quitar si quieres: Function ProbandoFuncion() If CopiaRespaldo(CurrentProject.Path, CurrentProject.Path & "\Respaldo", CurrentProject.Name, "MdbRespaldo.mdb") = True Then MsgBox "La copia de respaldo ha tenido exito", vbExclamation, "TODO CORRECTO" Else MsgBox "Han habido Fallos al copiar", vbCritical, "Error realizando la copia" End If End Function