Vba excel

Hola, he creado un formulario en excel y lo que necesito es que se rellenen todas las casillas antes de cerrarlo. Conozco el uso de la orden condicional por vba pero no se como anclarla al icono de cerrar la aplicación (el icono de aspas en la equina superior derecha de excel, en este caso), y que me salga un msgbox que me indique que debes rellenar todas las casillas para poder cerrar.En resumen no dejar cerrar excel hasta que se haya completado determinados campos.Se como hacerlo para un botón de cerrar el formulario pero lo que no se es como llevar esta orden para que se ejecute antes de cerrar la aplicación, en este caso excel.
Si no me he explicado lo suficientemente bien, por favor dímelo y te ayudaré a ayudarme.
Muchas gracias por tu tiempo

2 respuestas

Respuesta
1
Pienso que podrías usar el evento BeforeClose de tu Workbook. Allí puedes verificar que se halla completado la información y si no está entonces cancelar la orden, algo así:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
   If Range("A1").Value = "" Then
           Cancel = True
           MsgBox "Debe completar todo el formato"
   End If
End Sub
Respuesta
1
Antes que nada mil disculpas por la demora...
Te cuento que lo que tienes que usar es el evento BeforeClose del Woorkbook
Private Sub Workbook_BeforeClose(Cancel As Boolean)
       if     condicion then
                          cancel = false '----- no deja cerrar
        else
                           cancel = true
        end if
End Sub
Suerte y espero que te halla sido de ayuda
Saludos, y no te olvides de finalizar y evaluar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas