En el momento de estar trabajando con Excel uno siempre debe grabar constantemente para evitar cualquier perdida en el trabajo si llegara a ocurrir un problema. Al momento de intentar cerrar el libro a trabajar, Excel nos advierte de grabarlo:
Sin embargo, puede darse el caso que por un descuido o apuro, el usuario omita accidentalmente esta advertencia y cierre el libro sin grabar.
Esta macro es una manera de proteger a los usuarios de evitar cerrar el libro de Excel sin previo guardado. Con esto aseguramos que Excel grabe todo inmediatamente se cierre el libro que se esta trabajando.
¿Cómo funciona la Macro?
La macro utiliza el código en VBA Before.Close, que se activa inmediatamente cuando uno intenta cerrar la ventana de Excel. En ese momento al usuario se le abrirá una ventana que le preguntará si desea guardar y cerrar la ventana.
El código en Macro de la función utiliza la función Select Case que evalúa diversos casos dependiendo de lo que el usuario decida. Para este caso sólo dependerá si el usuario selecciona ACEPTAR o CANCELAR. A continuación se muestra el código utilizado:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Select Case MsgBox("¿Guardar y Cerrar?", vbOKCancel)
Case Is = vbCancel
Cancel = True
Case Is = vbOK
ActiveWorkbook.Save
End Select
End Sub
De este código entendemos que al momento de cerrar el libro de Excel,automáticamente se hará el llamado a un cuadro donde se apreciará el mensaje ¿Guardar y cerrar?. Es donde entran los casos que son:
1.Cancelar:En caso se seleccione se procederá a cerrar el mensaje.
2. Aceptar: En caso se seleccione se procederá a cerrar y guardar el archivo.
Creado por: Orlando Aguirre Hernández
24/10/2017 a las 10:11 pm
BUENAS NOCHES.
ME PODRIAN AYUDAR A HACER UNA MACRO QUE GUARDE UN ARCHIVO DE EXCEL QUE ES TIPO XLSM PERO EN UN NUEVO ARCHIVO UTILIZANDO UNA CELDA PARA PONER EL NOMBRE Y QUE EL TIPO DE ARCHIVO SEA SIEMPRE XLSM.GRACIAS