Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Como Crear BACKUP en LA NUBE ONEDRIVE en Forma SENCILLA con Excel VBA #596

Backup en la Nuve OneDrive con Macro Excel

MACRO de EXCEL PARA CREAR UNA COPIA DE SEGURIDAD EN ONE DRIVE

En este ejemplo se muestra una macro de Excel que permite crear una copia de Seguridad en la Nube, en este caso utiliza One Drive de Microsoft (pero puede ser otro como DropBox) para guardar un backup del archivo sobre el cual estamos trabajando, todo en forma sencilla y como siempre solamente haciendo click en un botón.

Si requieres aprender a manejar Excel deberías hacer click acá, si quieres aprender sobre Excel en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet, te lo recomiendo no te arrepentirás.

  
 

Puedes ver la macro en acción y una explicación más detallada de su codificación y funcionamiento, descarga el archivo y mira el video para una más fácil comprensión de la macro; suscribe a nuestro canal de You Tube, mira el playlist con  vídeos relacionados donde podrás ver la macros relacionadas en acción con una explicación en forma visual que ayudará a entender el ejemplo en forma más fácil.

Copia de Seguridad con Excel en la Nube

El ejemplo es bastante sencillo y fácil, se debe realizar click en el botón que se encuentra en la hoja de Excel del libro usado como ejemplo, el cual se puede descargar desde el final.

La macro hará una copia de seguridad o backup del archivo de Excel que se está utilizando actualmente, y la guardará en la carpeta que crea One Drive, luego cuando se sincronice se subirá a la nube, teniendo una copia de seguridad de nuestro fichero de Excel en la Nube.

Esto tiene como ventaja que se puede descargar desde cualquier parte del mundo solo basta ingresar o sincronizar One Drive y tendremos el archivo disponible.

Para descargar One Drive se puede realizar desde el link, si se busca en google encontraremos tutoriales sobre como utilizarlo, recuerden que se descarga en la PC un archivo para sincronizar que aparenta o se ve como si fuera un disco más en nuestra PC.

Explicación de la Macro de Excel para realizar Copia de Seguridad y Guardar en ONE DRIVE

Lo primero que vamos a realizar es determinar cual es nuestro usuario, ya que dirección de OneDrive en nuestra PC utilizar el nombre de usuario de Windows, ello se realiza con el siguiente código:

myuser = Environ(«UserName»)

Una vez obtenido el usuario se establece cual es la ruta de OneDrive en nuestra PC y se agrega en dicho directorio una carpeta denominada «BACKUP» para guardar nuestras copias de seguridad, el código es el siguiente:

Direc = «C:\Users\» & myuser & «\OneDrive\BACKUP\»

Se verifica si existe la carpeta «BACKUP» en caso negativo la crea, con el siguiente código:

If Dir(Direc, vbDirectory) = «» Then MkDir Direc 

Luego se crea el nombre del archivo de backup, este contendrá el nombre del archivo actual sin la extensión, para determinarlo se usa:

nom = ActiveWorkbook.Name
lar = InStr(nom, «.»)
nom = Left(nom, lar – 1)

Luego se utiliza en el nombre del archivo de backup la fecha actual, es decir el nombre del fichero de backup contendrá la fecha de realización de la copia de seguridad, se utiliza el siguiente código:

nomfecha = Format(Date, «ddmmyyyy»)

Posteriormente se utiliza en el nombre del archivo de backup la hora actual, es decir el nombre del fichero de backup contendrá además de la fecha, la hora de realización del resguardo de seguridad del archivo de Excel, el código usado es:

nomhora = Format(Time, «hhmmss»)

Por último el nombre del archivo de backup será una concatenación del nombre del archivo de Excel utilizado en ese momento, la fecha y la hora del momento del backup, asi:

nomarchi1 = Direc & «BACKUP» & » » & nom & » » & nomfecha & » » & nomhora & «.xlsm»

Luego se realiza la copia de seguridad o backup del archivo de Excel utilizado en ese momento, recordemos que una vez realizado el backup se seguirá trabajando en el archivo original, lo mencionado se hace con el siguiente código de VBA:

ThisWorkbook.SaveCopyAs nomarchi1 

Para finalizar la macro emite un aviso sobre la realización del backup del archivo del Excel usado en ese momento.

MsgBox («El Backup se creo con éxito»), vbInformation, «AVISO»

Código VBA para CREAR una COPIA de SEGUIDAD EN LA NUBE

Código que se coloca en un módulo de VBA

Sub Backup()
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False

myuser = Environ(«UserName»)
Direc = «C:\Users\» & myuser & «\OneDrive\BACKUP\»
‘Direc = CreateObject(«wscript.shell»).specialfolders(«desktop») & «\BACKUP\»

If Dir(Direc, vbDirectory) = «» Then MkDir Direc ‘Verifica si existe la carpeta o directorio, si no existe lo crea

nom = ActiveWorkbook.Name
lar = InStr(nom, «.»)
nom = Left(nom, lar – 1)
nomfecha = Format(Date, «ddmmyyyy»)
nomhora = Format(Time, «hhmmss»)
nomarchi1 = Direc & «BACKUP» & » » & nom & » » & nomfecha & » » & nomhora & «.xlsm»
‘ActiveWorkbook.SaveAs Filename:=nomarchi1, FileFormat:=xlOpenXMLWorkbookMacroEnabled
ThisWorkbook.SaveCopyAs nomarchi1 ‘Crea backup y se sigue trabajando en libro original
MsgBox («El Backup se creo con éxito»), vbInformation, «AVISO»
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub


Descarga el fichero Excel con la macro, usado para Realizar un Backup en la nube

Descarga el fichero usado como ejemplo en este post y en el vídeo explicativo, el mismo es totalmente gratuito y libre su uso, solicito aportar para sostener esta web, si está dentro de tus posibilidades, desde ya muchas gracias.

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.

Donate:
Cuenta Paypal: https://paypal.me/programarexcel

Cuenta Bitcoin: 1KBGGb8fyDzyR3X1Rie6m7VguzaAfngNbd

Cuenta Ether: 0x41Bbd24556914C83a31217eBb3BC49789b66e407

Cuenta Skrill: marcrodos@yahoo.es

Cuenta Neteller: marcrodos@yahoo.es