Crear backups cada X tiempo

0

 


Código 1 (Copia y pega en un MODULO)


Public ProximaCopia As Date

Public UltimoGuardado As Date


Sub IniciarBackups()

    UltimoGuardado = Now

    CrearBackup

    ProgramarBackup

End Sub


Sub ProgramarBackup()

    'cada X tiempo (10 segundos)

    ProximaCopia = Now + TimeValue("00:00:10")

    Application.OnTime EarliestTime:=ProximaCopia, Procedure:="EjecutarBackup"

End Sub


Sub EjecutarBackup()

    'solo si hubo cambios

    If ThisWorkbook.Saved = False Then

        CrearBackup

    End If

    ProgramarBackup

End Sub


Sub CrearBackup()

    Dim carpeta As String

    Dim nombre As String

    'ruta de tu Carpeta y  el nombre de tu fichero

    carpeta = "C:\Users\a2j\Downloads"

    nombre = Left(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".") - 1) & "_" & Format(Now, "yyyymmdd_hhmmss") & ".xlsm"

    ThisWorkbook.SaveCopyAs carpeta & nombre

    UltimoGuardado = Now

End Sub


Sub DetenerBackups()

    On Error Resume Next

    Application.OnTime EarliestTime:=ProximaCopia, Procedure:="EjecutarBackup", Schedule:=False

End Sub


Código 2 (Copia y pega en THISWORKBOOK)


Private Sub Workbook_Open()
    IniciarBackups
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    DetenerBackups
End Sub


Si te gustó, por favor regístrate en nuestra Lista de correo y Suscríbete a mi canal de YouTube para que estés siempre enterado de lo nuevo que publicamos

Entradas que pueden interesarte

Sin comentarios

Etiquetas:
#aprendiendoexcel365, #josealcaldealias, #Excel, #funciones, #UDF, #Visual Basic, #VBA, #DAX, #Tips, #Basico, #Microsoft Excel, #Cursos Excel OnLine, #Aprende Excel, #Aprende Excel OnLine, #Excel 365, #Power Pivot, #Power BI, #Power Query, #Google Sheets, #Macros, #Código VBA, #Tutoriales Excel, #MTV, #Vbscript, #TypeScript, #Lenguaje M, #fórmulas, #funciones, #paso a paso, #funciones Excel, #libros, #tablas, #formatos, #hojas, #datos, #gráfico, #análisis de datos, #base de datos, #dashboards, #tablas dinámicas, #excel desde cero, #hoja de cálculo, #plantillas de Excel