unload macro formulario form close cerrar excel vba excel-vba excel-2010

excel - macro - Cerrar un formulario de usuario con Unload Me no funciona



vba close userform (3)

Como se especifica en la respuesta superior, usé lo siguiente en el código detrás del control de botón.

Private Sub btnClose_Click() Unload Me End Sub

Al hacerlo, no intentará descargar un control, sino que descargará el formulario de usuario donde reside el control de botón. La palabra clave "Me" se refiere al objeto de formulario de usuario incluso cuando se llama desde un control en el formulario de usuario. Si está obteniendo errores con esta técnica, hay un par de razones posibles.

  1. Podría estar ingresando el código en el lugar incorrecto (como un módulo separado)

  2. Es posible que esté utilizando una versión anterior de Office. Estoy usando Office 2013. He notado que VBA cambia con el tiempo.

Desde mi experiencia, el uso del método DoCmd ... es más específico para las características de macro en MS Access, pero no se usa comúnmente en Excel VBA.

En condiciones normales (fuera de la caja), el código anterior debería funcionar bien.

Necesito cerrar un formulario de usuario de Excel utilizando VBA cuando un usuario ha hecho clic en un botón de envío y se han realizado operaciones.

¿Cómo puedo cerrar un formulario de usuario de sí mismo?

He intentado esto pero devuelve un error 361.

Unload Me


Sin ver su código completo, esto es imposible de responder con certeza. El error generalmente ocurre cuando está intentando descargar un control en lugar del formulario.

Asegúrate de que no tienes el "yo" entre paréntesis.

Además, si puede publicar el código completo para el formulario de usuario, esto sería de gran ayuda.


Unload Me solo funciona cuando se llama desde userform self. Si desea cerrar un formulario desde otro código de módulo (o formulario de usuario), debe usar la función de descarga + nombre de usuario para cerrar el nombre.

Espero que sea de ayuda