Este art铆culo pertenece a nuestra serie dedicada a UserForms. Si es el primero que has visto, te sugiero iniciar por la primera entrega: Introducci贸n a UserForms
Art铆culo anterior: UserForms | Controlar el ingreso de Textos
En esta secci贸n de la serie de UserForms, dedicaremos un espacio a hablar de las listas desplegables. Las mismas, si las configuramos apropiadamente, pueden ser un aliado muy potente para lograr una 贸ptima experiencia de usuario.
Comenzaremos por hacer un poco de espacio en nuestro formulario:
Y crearemos una etiqueta llamada “Sucursal”, donde para el caso de nuestro ejemplo, el usuario podr谩 elegir si pertenece a la sucursal Norte, Sur, Este u Oeste.
Lo que conocemos tradicionalmente como una lista desplegable, se encuentra para el caso de los UserForms en la herramienta Cuadro Combinado:
Y el procedimiento para agregarlo a nuestro formulario es id茅ntico al que hemos realizado para las dem谩s herramientas:
Los cuadros combinados tienen dos propiedades que ser谩n particularmente interesantes. Para acceder a ellas, hacemos un click sobre el mismo, y observamos la ventana Propiedades:
Comencemos por examinar la propiedad RowSource: esta representa el listado de origen, de donde provendr谩n los datos entre los cuales el usuario podr谩 elegir. En la pr谩ctica, esto representa el rango de datos disponible en una hoja de Excel.
Dado que esta propiedad puede asumir como valores tanto rangos expl铆citos (A1:B2), como nombres de rangos est谩ticos o din谩micos, crearemos para este ejemplo un rango llamado tambi茅n sucursales en una nueva hoja, “Datos”:
Y al ejecutar el formulario, ¡dichas opciones estar谩n ahora disponibles!
Antes de proseguir, hay una propiedad adicional que vale la pena conocer: MatchEntry.
Esta refiere al modo en que se produce la coincidencia al ingresar alg煤n valor en nuestro cuadro combinado (ya que podemos escribir en 茅l como un cuadro de texto, y seleccionar las opciones que se desprendan de ello).
- 0 – fmMatchEntryFirstLetter, refiere a la posibilidad de que se ingrese una 煤nica letra en nuestro cuadro combinado, para que el mismo sugiera las alternativas disponibles. Si varias opciones comparten la misma letra inicial, presionarla varias veces permitir谩 ir alternando entre opciones.
- 0 – fmMatchEntryComplete, presenta un comportamiento semejante a las sugerencias de Google, donde al escribir algunos caracteres, se propone la sugerencia que mejor se ajuste a los datos ingresados:
- Finalmente, 0 – fmMatchEntryNone, no plantea ninguna sugerencia:
Para todos los casos anteriores, sin embargo, el usuario tendr铆a total libertad para escribir cualquier texto dentro del desplegable. Si bien esto puede ser 煤til en algunos escenarios, muchas veces la intenci贸n es que este desplegable no act煤e solo como sugerencia, sino tambi茅n nos permita tener un control estricto sobre las opciones disponibles. Para ello, debemos configurar la propiedad MatchRequired como True. Esto significa, que se requiere una coincidencia con las opciones disponibles, para considerar el ingreso v谩lido (el usuario deber谩 seleccionar del desplegable).
Ahora, te recomiendo “jugar” con las opciones disponibles y ver qu茅 ocurre con cada una de ellas.
Finalmente, intenta realizar la carga de la opci贸n seleccionada a la base de datos, utilizando los procedimientos de los art铆culos anteriores. Puedes verificar la implementaci贸n completa en el archivo de ejemplo completo.
Art铆culo Anterior: UserForms | Controlar el Ingreso de Textos