Cómo mostrar una barra de progreso con un formulario de usuario en Excel

Barra de progreso


En esta publicación, aprenderemos cómo mostrar una barra de progreso con un UserForm en Excel y VBA.

Rol de la barra de progreso

Si tiene un rastreador, panel o aplicación automatizado basado en VBA que tarda mucho tiempo en finalizar la actividad, entonces la indicación del progreso es obligatoria; de lo contrario, el usuario no podrá comprender si se está realizando alguna tarea o si el sistema no responde.

Con la ayuda de la barra de progreso, el usuario puede seguir el progreso de una operación prolongada y obtener información sobre la operación en curso y cuánto porcentaje aproximado de la tarea se ha realizado.

Entonces, considerando la usabilidad de la barra de progreso, debemos incluirla en la automatización compleja o en los trabajos basados ​​en VBA donde necesitamos mostrar el progreso de una tarea.

Demostración de la barra de progreso

Barra de progreso
Demostración de la barra de progreso

Como la barra de progreso muestra el% de finalización de una tarea, agregué un botón en la página de inicio para que cada vez que el usuario haga clic en él, insertará 100 nuevas hojas de trabajo, cambiará el nombre de todas las hojas de trabajo y agregará 10 encabezados de columnas diferentes en la primera fila de cada hoja.

Al realizar todas estas actividades, llevará algún tiempo, por lo que podemos mostrar el% de finalización con la ayuda de la barra de progreso para el propósito de la demostración.

Entonces, este es solo un ejemplo para mostrar la barra de progreso. Puede utilizar la misma lógica en su proyecto real.

Creación del formulario de usuario para la barra de progreso en VBA

  1. Abra un nuevo libro de trabajo en Excel.
  2. Guarde el archivo con el nombre «Barra de progreso» con extensión habilitada para macros.
  3. Cambie el nombre de Sheet1 a ‘Hogar’ e inserte un rectángulo redondeado con la leyenda ‘Insertar hojas de trabajo’.
  4. Vaya a la ventana de la aplicación Visual Basic. Para hacer eso, simplemente haga clic en la pestaña Desarrollador y luego haga clic en el botón VBA disponible en el grupo Código. Alternativamente, puede presionar ALT + F11 como tecla de método abreviado.
  5. En el menú Insertar, haga clic en UserForm.
  6. Cambie las siguientes propiedades de UserForm:
    Nombre: frmProgressForm | Subtítulo: Progreso | Altura: 86 | Ancho: 278 | ShowModal: Falso
  7. Inserte un control Frame en UserForm.
  8. Cambie las siguientes propiedades del control Frame a los siguientes valores:
    Nombre: FrameProgress | Subtítulo : 0% | Altura : 42 | Ancho : 252
  9. Inserte un control de etiqueta en UserForm en Frame.
  10. Cambie las siguientes propiedades del control Etiqueta a los siguientes valores:
    Nombre: lblProgress | Subtítulo : NULO | Color de espalda: Azul | Altura : 18 | Ancho : 240 | Efecto especial:1-frmSpecialEffectRaised

Ahora, hemos terminado con el diseño del formulario y la barra de progreso.

Escribir código VBA

Insertemos un módulo para escribir el código. Para insertar un módulo, haga clic en el menú Insertar y luego haga clic en el módulo.

Pasemos a la ventana de código del módulo.

Aquí, necesitamos escribir un subprocedimiento para insertar 100 nuevas hojas de trabajo en el libro de trabajo y cambiar el nombre de todas las hojas con el patrón de nomenclatura ‘Hoja personalizada 1… 2… 3… ”y luego crear 10 encabezados de columna en todas las hojas recién insertadas.

Mientras realizamos todas las operaciones, calcularemos el% de finalización y luego aumentaremos el ancho de la etiqueta para mostrar el progreso de la tarea.

Escribamos un subprocedimiento para mostrar la forma. Utilizaremos esto mientras asignamos macro en el botón disponible en Hogar hoja de cálculo.

Ahora, muevamos el código de formulario viudo y llamemos al ‘Actividad de proceso‘procedimiento en formulario activar evento.

Ahora, hemos terminado con el diseño y la codificación de la barra de progreso UserForm. Pasemos a la ventana de Excel y asignemos la macro en el botón.

Para asignar la macro, hagamos clic derecho en el botón y luego haga clic en ‘Asignar macro …’ Seleccione el ‘Show_Form’ del nombre de la macro y luego haga clic en Aceptar.

Asignar macro

Ahora, hemos terminado con la asignación de macros. Puede hacer clic en el botón para insertar hojas y mostrar la barra de progreso.

Por favor mira paso a paso Youtube tutorial para desarrollar Progress Bar en Excel y VBA.

Entonces, esto se trata de la barra de progreso en Excel y VBA. Si tiene alguna pregunta, siempre puede preguntarme en la sección de comentarios o enviarnos un correo electrónico a info@thedatalabs.org

Haga clic en el botón de abajo para descargar el archivo de práctica junto con el código VBA.

Descargar
Haga clic para descargar

Entradas relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *