Guarda Excel automáticamente cada minuto


Este procedimiento de VBA  o macro de Excel, tiene por objeto algo bastante útil que es el autoguardado del libro Excel en el que estamos trabajando, también se relaciona con el ejemplo sobre como abrir un libro extraer información y guardar archivos tipo CVS, todo ello mediante código de VBA.

El código de VBA que aquí se presenta, titulado guardar Excel automáticamente, incorpora un ejemplo que tiene cierta relación y es complementario con la entrada sobre como crear carpetas y guardar archivo con nombre variable en pdf, ya que se crea un procedimiento de VBA bastante interesante, ya que soluciona muchos problemas que trae aparejado el olvido del guardado de un libro de Excel a medida que se trabaja, si bien Excel posee un autoguardado se debe configurar cada cuanto tiempo y a veces provoca errores cuando son planillas complejas, nada mejor que ir guardando automáticamente el libro cada cierto tiempo.

Muchas veces me ha pasado y seguramente a ustedes también que se imprime mucho tiempo trabajando y deja de la lado el guardado de dicho trabajo, y luego nos agarramos la cabeza, porque hemos perdido tan valioso trabajo; ello puede deberse a un fallo en la corriente eléctrica o porque se tildó el Excel o Windows, obteniendo como resultado la perdida de varios minutos e incluso horas de trabajo por no guardar el libro.

Con esta macro nos debemos olvidar del guardado del libro y pérdida de tiempo que genera al tener que volver a realizar el trabajo ya hecho antes de los eventos mencionados anteriormente; ya que al abrir el libro de Excel se inicia la macro y sigue corriendo hasta que cerremos el libro, guardándolo cada minuto, en este ejemplo, peros se puede configurar para el intervalo que se necesite; cosa que si ocurre algo imprevisto como lo que se dijo, solo se pierda como mucho un minuto de trabajo, lo cual hace bastante interesante la macro.

Primero se debe colocar en ThisWorkbook el siguiente procedimiento


Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:01:00"), "savebook"
End Sub

Luego en un módulo el siguiente código:



Sub savebook ()
ActiveWorkbook.Save
Application.OnTime Now + TimeValue("00:01:00"), "savebook"
End Sub


Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.



If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.