Ejercicios con el Evento Workbook BeforeSave de VBA
Es un evento se ejecuta antes que se guarde el libro. Tiene dos argumentos: BeforeSave (SaveAsUI, Cancel) que vamos a conocer a continuación.
Parametros
Nombre | Obligatorio / Opcional | Tipo de Dato | Descripción |
SaveAsUI | Obligatorio | Boolean | Si pone SaveAsUl =True, se mostrará un cuadro de dialogo Guardar como para almacenar lo realizado en el libro. |
Cancel | Obligatorio | Boolean | Si Cancel =True, no se guardará lo realizado en el libro. |
Ejercicio 1. Obligar a llenar datos antes de guardar libro.
En este ejemplo se usa el evento BeforeSave para comprobar que las celdas C2,C3,C4 contengan datos antes de que se pueda guardar el libro. No se puede guardar el libro hasta que haya datos en las celdas siguientes: C2,C3,C4. De esta manera obligaremos al usuario a que ponga su nombre, apellido y carrera.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Worksheets("Datos").Range("C2")="" Or Worksheets("Datos").Range("C3")="" or Worksheets("Datos").Range("C3")="" Then
msgbox "Complete todos los datos"
Cancel=True
Exit Sub
Else
msgbox "Datos Guardados"
End if
End Sub
Ejercicio 2. Confirmar antes de guardar el libro.
En este ejemplo vamos a pedir que primero se confirme antes de guardar el libro.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Pregunta = MsgBox("Está seguro que quiere guardar el libro?", vbYesNo)
If Pregunta = vbNo Then Cancel = True
End Sub
Responses