Colección de controles

Al crear Userforms en Excel VBA , se puede utilizar la colección Controls para hacer fácilmente un bucle a través de los controles y establecer una propiedad de cada control a un valor específico.

La forma de usuario que vamos a crear tiene el siguiente aspecto:

Para crear este formulario de usuario, ejecute los siguientes pasos:

1. Abra el Editor de Visual Basic. Si el Explorador de Proyectos no está visible, haga clic en Ver, Explorador de Proyectos.

2. 2. Haga clic en Insertar, Formulario de usuario. 3. Si la Caja de herramientas no aparece automáticamente, haga clic en Ver, Caja de herramientas. La pantalla debe configurarse como se indica a continuación.

3. Añade la etiqueta, las cajas de texto (la primera arriba, la segunda debajo de la primera, y así sucesivamente) y el botón de comando. Una vez que esto se haya completado, el resultado debe ser consistente con la imagen del Formulario de Usuario mostrado anteriormente. Por ejemplo, cree un control de cuadro de texto haciendo clic en TextBox desde la Caja de Herramientas. A continuación, puede arrastrar un cuadro de texto en la Forma de usuario.

4. Para cambiar el título de la forma de usuario, la etiqueta y el botón de comando, haga clic en Ver, Ventana de Propiedades y haga clic en cada control.

5. Para mostrar el formulario de usuario, coloque un botón de comando en su hoja de trabajo y añada la siguiente línea de código:

Soldado Sub Sub CommandButton1_Click() UserForm1.Show vbModeless End Sub

Explicación: al añadir vbModeless, puedes usar el Userform y trabajar en tu hoja de trabajo al mismo tiempo.

Hemos creado la primera parte de la forma de usuario. Aunque ya se ve bien, no pasará nada aún cuando hagamos clic en el botón de comando de la forma de usuario.

6. Abre el Editor de Visual Basic.

7. En el Explorador del Proyecto, haga doble clic en UserForm1.

8. Haga doble clic en el botón de comando.

9. Añade las siguientes líneas de código:

Soldado Sub Sub CommandButton1_Click() Dim i As Integer Para i = 1 a 10 Controles(«TextBox» & i).Valor = Celdas(i + 1, 1).Valor Siguiente… End Sub

Explicación: Con sólo unas pocas líneas de código, podemos llenar los cuadros de texto con los números de teléfono de la hoja. Usamos el operador & para concatenar (unir) los elementos. Estas líneas de código funcionan porque no cambiamos los nombres de los controles de los cuadros de texto (TextBox1, TextBox2, TextBox3, etc.). Para cambiar los nombres de los controles, haz clic en Ver, Ventana de propiedades y haz clic en cada control.

Resultado cuando se hace clic en el botón de comando de la hoja:

Deja un comentario