Access - Filtrar un Cuadro de Lista, utilizando un cuadro combinado

   
Vista:

Filtrar un Cuadro de Lista, utilizando un cuadro combinado

Publicado por Alex (6 intervenciones) el 03/09/2013 10:45:50
Buenos días a todos, tengo un problema. No se como filtrar un cuadro de lista, pero utilizando una de las opciones del cuadro combinado.

Dejarme que lo explique mejor:



El cuadro combinado de la izquierda contiene 3 opciones: NVH, EMC, CLIMA

Después tengo un cuadro de Lista que la primera columna que se llama: LAB, contiene las iniciales por las que quiero filtrar...

Entonces como puedo hacer que si seleccio EMC en cuadro combinado, me filtre el cuadro de lista, dejando solo aquellos registros con la columna LAB = EMC.... ??

Estoy atascado, ayudarme por favor!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Neckkito

Filtrar un Cuadro de Lista, utilizando un cuadro combinado

Publicado por Neckkito (1104 intervenciones) el 05/09/2013 08:38:53
Hola!

Supongamos que tu combo se llama miCbo (Propiedades del combo -> Pestaña Otras -> Nombre)
Supongamos que tu lista se llama miLista
Supongamos que la tabla de origen de la lista se llama LISTA

Entonces, sacas las propiedades del combo -> Pestaña Eventos -> Después de actualizar, y le generas el siguiente código:

...
Private Sub miCbo_AfterUpdate()
Me.miLista.RowSource = "SELECT * FROM LISTA" _
& " WHERE Lab='" & Me.miCbo.Value & "'"
Me.miLista.Requery
End Sub
...

El código anterior presupone que el combo devuelve un valor de tipo texto. Si no fuera así y tuvieras alguna clave principal oculta se debería cambiar ligeramente el código.

Pero, en principio, supondremos que he supuesto bien.

A ver si te sale.

Saludos,


http://neckkito.siliconproject.com.ar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Filtrar un Cuadro de Lista, utilizando un cuadro combinado

Publicado por Damian (17 intervenciones) el 19/09/2013 21:46:27
Hola Neckkito, te hago una consulta pq este código me resultó muy útil pero de forma parcial, estoy queriendo adaptarlo, yo estoy tomando los datos de la misma forma solo que lo tomo de un txtbox, lo adapté y funcionó, basicamente es lo mismo.

Mi problema viene ahora que necesito que la busqueda no sea de valor exacto, ejemplo: Tengo una empresa que se llama "GLOBAL VIEW", al queres buscar quiero que cuando coloque "GLOBAL" o "VIEW" en el txtbox me traiga ese dato de "GLOBAL VIEW" completo.

Espero haberme explicado correctamente. Gracias.

Lo modifico ya que me di maña y lo conseguí, reemplacé el "=" por un "Like" y funcionó, dejo el código que utilicé por si les sirve:

1
2
3
4
5
Private Sub txtsearchname_AfterUpdate()
Me.miLista.RowSource = "SELECT * FROM Turnos" _
& " WHERE Cliente Like '*" & txtsearchname & "*'"
Me.miLista.Requery
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

Filtrar un Cuadro de Lista, utilizando un cuadro combinado

Publicado por Neckkito (1104 intervenciones) el 19/09/2013 21:51:57
Hola!

La mecánica es la misma que te comentaba, sólo que en el filtro debes utilizar el operador LIKE.

Es decir, suponiendo que defines una variable STRING que te coge el valor del textbox

Dim miTexto as string
miTexto=me.textbox.value

Haces el filtro como te indicaba, pero en el WHERE escribes

WHERE [campo] LIKE '*" & miTexto & "*'"

Ojo con las comillas simples y las dobles! Es importante que estén en el lugar adecuado.

Un saludo,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar