Filtrar Cuadro Combinado con Cuadro de Texto en Access

Tengo un formulario llamado INFORMES donde tengo un cuadro combinado desde donde selecciono el nombre de un CLIENTE (este cuadro toma el nombre del cliente desde la tabla ABM_CLIENTES) como parte de un proceso de llenado de datos de los informes que voy haciendo. Como tengo muchos clientes, cuando despliego el cuadro combinado debo buscar mucho hasta encontrar el que quiero, por lo que necesito filtrar el nombre del cliente, ya sea escribiendo 2 o 3 letras en el cuadro combinado y el mismo me filtre los nombres que CONTENGAN esas letras o bien, con un cuadro de texto aparte donde inserte la palabra para el filtro.

¿Me podrian ayudar a saber como hacerlo? Busqué bastante y encontré algunas opciones pero no logro hacerlas funcionar y no soy muy experto en Access.

2 Respuestas

Respuesta

Lo puedes hacer de mil formas, por eso sería mejor que pusieras una imagen del formulario, con el cuadro combinado "desplegado". Por ejemplo, tengo el formulario Productos con un combinado llamado ElegirOtro, que no tiene Origen de la fila

En el combinado escribo, por ejemplo, v y me muestra todos aquellos productos que tengan una v en cualquier lugar de su nombre

Si ahora le añado una e

El combinado sólo me muestra aquellos productos que en su nombre tengan la cadena VE. Si ahora le añado una r

Y si ahora selecciono uno de ellos

Me muestra sólo ese registro.

En este caso, en el evento Al cambiar del cuadro combinado le tengo puesto

Private Sub ElegirOtro_Change()
DoCmd.SetWarnings False
ElegirOtro.SetFocus
ElegirOtro.RowSource = "select producto from productos where producto like '*" & Me.ElegirOtro.Text & "*'"
ElegirOtro.Dropdown
ElegirOtro.SetFocus
End Sub

Y en el evento Después de actualizar del combinado le pongo

Private Sub ElegirOtro_AfterUpdate()
Me.RecordSource = "select * from productos where producto like '*" & Me.ElegirOtro.Text & "*'"
End Sub

Pero ya te digo que puedes hacerlo de mil formas, por ejemplo, escribiendo directamente una cadena, etc..

Respuesta

Entiendo que desea buscar un cliente, tenga cuidado de abusar con el uso de cuadros combinados especialmente en aplicaciones cliente servidor, porque si previamente no se hace un filtro se cargarán del servidor todos los registros. Para su caso le propongo que utilice para la búsqueda o filtro un formulario con un cuadro de lista. Por ejemplo,

En este ejemplo muestro como hacer la búsqueda mediante una consulta o con SQL y teniendo en cuenta la búsqueda con acentos, es decir, si escribo SALOMÓN y existe SALOMON, sAlomón, aparezca el el filtro.

Búsqueda con SQL

Se muestran todos los artículos que tengan la palabra carib

Si quiere algo más profesional lo invito a ver mi video en Youtube https://youtu.be/Bwg4KlJEkX4

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas