Los cuadros de lista son un tipo de control ActiveX que nos permiten seleccionar uno o varios elementos dentro de una lista. La propiedad que nos permite especificar si el cuadro de lista permitirá realizar una selección múltiple es la propiedad MultiSelect.
La propiedad MultiSelect
A través de la propiedad MultiSelect de un cuadro de lista podemos permitir al usuario seleccionar más de una opción de la lista. Las posibles opciones de la propiedad MultiSelect son las siguientes:
- 0 – fmMultiSelectSingle: Solamente se puede seleccionar una opción de la lista. Este es el comportamiento predeterminado de un cuadro de lista.
- 1 – fmMultiSelectMulti: Se pueden seleccionar múltiples opciones haciendo clic sobre ellas. También se puede realizar la selección con la barra espaciadora.
- 2 – fmMultiSelectExtended: La selección múltiple se realiza pulsando la tecla CTRL mientras se hacer clic sobre las opciones. Si se utiliza la tecla MAYUS se pueden seleccionar varias opciones adyacentes.
Procesar la selección múltiple
Una vez que se ha configurado el cuadro de lista para permitir la selección múltiple viene el paso importante que es procesar el control para conocer las opciones seleccionadas. Observa el siguiente código que se ejecuta al pulsar un botón:
El bucle For Next de este código hace un recorrido por todos los elementos del cuadro de lista y en caso de que la propiedad Selected esté habilitada (true) entonces su valor se agrega a una cadena de texto que me permitirá conocer la selección posteriormente.
Una vez fuera del bucle For Next se valida si la cadena del mensaje es igual a cero caracteres en cuyo caso significa que no hubo ninguna opción de la lista seleccionada y por lo tanto se desplegará e mensaje “No hay elementos seleccionados”.
Observa el comportamiento de este código en la siguiente animación de un cuadro de lista de selección múltiple:
Si lo deseas puedes descargar el archivo de trabajo que contiene este ejemplo.
Artículos relacionados
Controles ActiveX en Excel