
En este blog, aprenderemos consejos de Excel y VBA para ejecutar UserForm sin mostrar la aplicación de Excel.
Esto va a ser muy interesante, por lo tanto, lea el blog completo y aplique las técnicas en su proyecto de VBA para hacerlo más efectivo y sin distracciones.
Comencemos primero con el área del problema y luego iremos con las soluciones paso a paso.
Problema y requisito
Supongamos que estoy tratando de ejecutar el Sistema de gestión de inventario desarrollado en Excel y VBA. Una vez, el archivo se abrirá y, en primer lugar, se ejecutará la aplicación Excel y luego le pedirá que habilitar la macro.

Mientras ejecuta el Sistema de gestión de inventario UserForm, podemos ver aplicación excel también corre detrás del Formulario de usuario.

Aquí, sólo queremos ocultar el Aplicación Excel cuando ejecutamos el formulario de usuario de gestión de inventario.
Significa que, si hacemos doble clic en Sistema de gestión de inventario en la carpeta, se ejecutará el Formulario de usuario directamente y ocultar el Aplicación Excel en antecedentes para que el usuario no pueda ver el Excel.
Una vez, el usuario hará clic en Cerrar botón en Formulario de usuario entonces cerrará el Formulario de usuario y mostrar el Excel Solicitud.

Pasos para mostrar solo el formulario de usuario
Para realizar esta actividad, debemos realizar algunos cambios en el Centro de confianza de VBA. Entonces, vayamos a la pestaña Desarrollador y luego hagamos clic en Seguridad de macros en Grupo de código.

Aquí, tenemos que cambiar el Configuración de macros.

Actualmente, puedes ver que ‘Deshabilitar todas las macros con notificación’ Está establecido. Significa que Excel siempre solicitará habilitar la Macro y, en ese caso, la aplicación de Excel siempre estará visible hasta que la Macro no se ejecute.
Entonces, aquí en Configuración de macros, puede seleccionar la última opción ‘Habilitar todas las macros (no recomendado; ejecución de código potencialmente peligroso)’.

Si selecciona esta configuración, Excel nunca le pedirá que habilite la macro y la ejecutará automáticamente al abrir la aplicación de Excel.
Recomendación:
Aquí, le recomendamos que seleccione esta opción solo si sabe que todas las macros disponibles en su máquina son seguras de ejecutar y que no dañarán su sistema ni sus datos. Si cree que podría haber algunos archivos de macro en los que no se puede confiar, evite esta configuración.
Entonces, considerando el problema de seguridad, vamos a mantener la segunda opción ‘Deshabilitar todas las macros con notificación‘ seleccionado en nuestra máquina. Si ve algún problema, entonces puede ir con ‘Habilitar todas las macros (no recomendado; ejecución de código potencialmente peligroso)’.

La siguiente opción alternativa y segura para ejecutar la macro sin que aparezca una ventana emergente para habilitarla es agregar una carpeta en ‘Ubicaciones de confianza‘ y guarde el archivo Macro allí.

En Ubicación de confianza, puede agregar una carpeta y Excel tratará todos los archivos disponibles en esa carpeta como confiables y seguros para ejecutar. Una vez que agregue la carpeta, solo necesita mantener sus archivos de macro en esa carpeta y ejecutar los mismos desde esa ubicación solamente.
Así que agreguemos rápidamente una ubicación de carpeta aquí después de hacer clic en el botón ‘Agregar nueva ubicación…’.

estoy agregando ‘D:\TheDataLabs\Aplicación de confianza\‘ aquí y moverá el archivo de Excel aquí.
Ahora hemos terminado con la configuración de Macro Security según nuestro requisito. El siguiente paso es escribir algunos códigos VBA en Libro de trabajo abierto y Consulta de formulario de usuarioCerrar evento en VBA.
Código VBA para ejecutar el formulario y ocultar la aplicación de Excel
Vayamos a la ventana de VBA y comencemos a escribir los códigos requeridos.
Para abrir la ventana de VBA, haga clic en Pestaña de desarrollador Y debajo Grupo de códigohaga clic en básico visual Botón. Alternativamente, también puede presionar atajo ALT + F11 para abrir la ventana de VBA.

Una vez, hacemos clic en el botón Visual Basic y luego saltaremos a Visual Basic para la ventana de la aplicación.
Ahora, tenemos que escribir el código en Evento de apertura del libro de modo que cuando se abra el libro de trabajo, todos los códigos se activarán automáticamente.

Escriba el siguiente código en el evento de apertura del libro de trabajo.
Private Sub Workbook_Open() Application.Visible = False frmInventory.Show End Sub
Privado Sub Workbook_Open() Solicitud.Visible = Falso frmInventario.Show Fin Sub |
Este código nos ayudará a ocultar la aplicación Excel y mostrar solo el formulario de usuario.
Ahora, movamos UserForm y escribamos los códigos VBA para mostrar, hacer visible la aplicación de Excel y cerrar el formulario.

Private Sub UserForm_QueryClose (Cancelar como entero, CloseMode como entero) Application.Visible = True Descargarme End Sub
Privado Sub UserForm_QueryClose(Cancelar Como Entero, CerrarModo Como Entero) Solicitud.Visible = Verdadero Descargar Me Fin Sub |
Si el usuario hace clic en el botón Cerrar en el formulario, este código mostrará la aplicación de Excel que se está ejecutando en segundo plano y luego cerrará el formulario de usuario.

Ahora, hemos terminado con todas las configuraciones y el código VBA necesarios para ejecutar el formulario de usuario sin mostrar la aplicación de Excel.
Guardemos este archivo y cerrémoslo para fines de prueba.
Ahora, ejecute el mismo archivo después de hacer doble clic en el icono de la carpeta (la carpeta que no se ha agregado como de confianza).
Aquí, puede notar que Excel todavía está solicitando habilitar la Macro y la razón es que hemos seleccionado Configuración de Macro como ‘Deshabilitar todas las macros con notificación’ y además, no estamos abriendo este archivo desde Carpeta de confianza que agregamos en Macro seguridad.

Entonces, cerremos este archivo nuevamente, copiemos el archivo y péguelo en la Carpeta de confianza.

Ahora, ejecute el archivo solo desde esta carpeta.
Aquí, puede ver que solo se muestra UserForm y Excel se ejecuta solo en segundo plano.

Si desea ver si Excel se está ejecutando en segundo plano o no, puede abrir el Administrador de tareas y ver lo mismo en la pestaña Proceso.

Cerremos el Administrador de tareas y vayamos a UserForm. Hagamos clic en el botón Cerrar disponible en UserForm.

Ahora, Excel está visible y UserForm se ha cerrado.

Entonces, se trata de cómo ejecutar el formulario de usuario sin mostrar el archivo de Excel. Espero que encuentres útil este blog.
Si tiene alguna consulta o comentario, publique su comentario aquí. ¡Gracias!
