Excel VBA Cerrar UserForm

Anteriormente habíamos discutido cómo crear un UserForm en VBA. Ahora, para obtener información del usuario, había un botón para enviar, que almacenaba el valor dado por el usuario en una hoja de Excel. Pero lo que después de dar el valor de la forma sigue ahí. O qué pasa si el usuario no quiere dar ningún dato y cerrar el formulario de usuario. No habíamos discutido cómo cerraremos el formulario de usuario para el usuario. Similar al botón enviar para enviar los datos, teníamos otro botón para cancelar que se usa para ocultar el formulario de usuario. El botón cancelar también tiene su propio código para ocultar la forma de usuario del usuario. Ahora hay dos métodos por los cuales podemos ocultar una forma de usuario. Son los siguientes:

  1. El primer método es cuando usamos el método Unload Me. Este método descarga el UserForm y desaparece de la pantalla.
  2. Otro método es cuando usamos el método Useform.Hide. Este método oculta el UserForm de la pantalla.

Se recomienda utilizar el segundo método para cerrar el UserForm, ya que el primer método descargará completamente el UserForm y los datos ingresados ​​por el usuario se perderán por completo. Pero cuando usamos el segundo método para ocultar el UserForm, la última entrada realizada por el usuario en el formulario de usuario todavía está presente.

¿Cómo cerrar UserForm en Excel VBA?

Aprenderemos sobre cómo cerrar UserForm en Excel VBA con su diferencia y con algunos ejemplos, pero primero, aprendamos el método para cerrar un formulario de usuario en VBA.

Hay dos métodos para cerrar la forma de usuario en VBA:

  1. Descargame
  2. Esconder
Puede descargar esta plantilla Excel de UserForm Close de VBA aquí - Plantilla Excel de UserForm Close de VBA

Excel VBA Cerrar UserForm - Ejemplo # 1

Primero, intentemos el método de cerrar un UserForm usando la opción Descargarme. Tuvimos un formulario de usuario en nuestro artículo anterior que se parece al siguiente.

Para el botón de envío teníamos nuestro código, que almacenaba los datos ingresados ​​por el usuario en Excel. Ahora haga doble clic en el botón cancelar que abrirá el código de la misma manera,

Código:

 Private Sub CommandButton2_Click () End Sub 

El botón Cancelar fue el segundo botón de comando que proporcionamos al formulario de usuario. Ahora escriba la declaración de código como Descargarme en la sección como se muestra en la imagen a continuación.

Código:

 Private Sub CommandButton2_Click () Descargar Me End Sub 

Podemos ver que Me es una declaración de Objeto de descarga. Ahora ejecutemos el formulario de usuario presionando la tecla F5 para mostrarlo.

Presione el botón Cancelar para ver que el formulario de usuario desaparece y nos lleva de vuelta al formulario de usuario original de la ventana del proyecto.

Excel VBA Cerrar UserForm - Ejemplo # 2

Ahora intentemos el segundo método, que userform.hide método de una manera similar a la anterior, primero, abramos el formulario de usuario desde el formulario de usuario en la ventana del proyecto.

Ahora haga doble clic en el botón cancelar que abrirá el código de vista para el botón de comando cancelar.

Ya tenemos la declaración Descargar Me presente en el botón de comando cancelar, borre el código y reemplácelo con la instrucción Userform.Hide .

Código:

 Private Sub CommandButton2_Click () UserForm1.Hide End Sub 

Ahora volvamos a ejecutar el formulario de usuario presionando la tecla F5 y visualícelo en la pantalla.

Cuando presionamos el botón cancelar, volvemos a movernos a la ventana del proyecto del formulario de usuario. Ahora todos podríamos preguntarnos cuál es la diferencia entre los dos métodos, ya que ambos métodos cierran la forma del usuario para nosotros perfectamente, entonces ¿por qué es el segundo método más recomendado de ambos? Descubriremos exactamente por qué en los siguientes dos ejemplos.

Excel VBA Cerrar UserForm - Ejemplo # 3

Ahora pasemos al primer método de la instrucción Unload Me para el botón cancelar y proporcione algunos datos al formulario de usuario. Haga doble clic en el botón cancelar del formulario de usuario para abrir el código de vista para el botón de comando y reemplace el código con la instrucción Descargarme de la siguiente manera.

Código:

 Private Sub CommandButton2_Click () Descargar Me End Sub 

Ahora ejecute el formulario de usuario nuevamente presionando la tecla F5 y haga que se muestre en la pantalla.

Permítanos proporcionar algunos datos al formulario de usuario de la siguiente manera, ahora no presione el botón Enviar, presione el botón Cancelar.

Nuevamente ejecute el formulario de usuario presionando la tecla F5.

Ahora podemos ver que hemos perdido los datos que hemos proporcionado al formulario de usuario, ya que no lo enviamos, no se almacenaron en la hoja de trabajo y cerramos el formulario de usuario utilizando la instrucción Descargar Me, que eliminó los datos que ya estaban llenos.

Excel VBA Cerrar UserForm - Ejemplo # 4

Ahora hagamos el mismo ejercicio pero usando la declaración Userform.Hide,

En el botón de comando cancelar, reemplace el código utilizando el método userform.hide como se muestra a continuación.

Código:

 Private Sub CommandButton2_Click () UserForm1.Hide End Sub 

Ahora volveremos a ejecutar el formulario de usuario presionando la tecla F5 y le proporcionaremos algunos datos de la siguiente manera.

Ahora permítanos presionar el botón cancelar, y nuevamente ejecute el formulario de usuario que nos dará el siguiente resultado.

Los datos ni siquiera se pierden cuando presionamos el botón cancelar si presionamos enviar, almacenará los datos en Excel de la siguiente manera.

Ahora los datos están almacenados, el formulario de usuario está vacío ahora y podemos cerrar el formulario de usuario con el botón cancelar,

Cosas para recordar

  • Una vez que el usuario ha realizado la entrada de datos, debemos cerrar el formulario de usuario, por lo que es tan importante como el botón Enviar.
  • Cerrar formulario de usuario se encuentra en el botón de comando del formulario de usuario en VBA. En general, se denomina Cancelar o Cerrar.
  • Existen dos métodos separados para cerrar una forma de usuario, pero eventualmente tienen el mismo propósito que el otro.
  • El método Userform.Hide es el más recomendado ya que incluso si el usuario cierra el formulario de usuario antes de la entrada de datos, los datos no se pierden y la entrada realizada por el usuario se muestra nuevamente cuando un usuario abre el formulario de usuario.

Artículos recomendados

Esta es una guía para VBA Cerrar UserForm. Aquí discutimos cómo cerrar UserForm en Excel usando la instrucción Unload Me y Userform.Hide método en VBA junto con algunos ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. ¿Cómo activar la hoja en VBA?
  2. Evaluar fórmula en Excel
  3. Guía completa del cuadro de lista de VBA
  4. Fórmula HYPERLINK en Excel

Categoría: