Access - Limpiar filtrado de textbox

 
Vista:
sin imagen de perfil

Limpiar filtrado de textbox

Publicado por karla (31 intervenciones) el 18/11/2015 19:42:50
Me encontré con un problema que no puedo resolver...

Tengo un formulario de filtrado relacionado a un subformulario, cuyos datos se encuentran en una consulta. Realizo el filtrado del campo Nombre mediante un textbox y le he agregado un botón para que se limpie el filtrado

Captura
La búsqueda de los registros los realizo mediante el siguiente código:

Private Sub txtNombre_Change()
Me.subFormBuscar.Form.RecordSource = "select * from ConsultaUnion where Nombre like '*" & Me.txtNombre.Text & "*'"
End Sub

Pasa que la búsqueda me la hace bien, pero no encuentro cómo regresar al estado inicial sin filtro.


Captura1

Captura2

Agradeceré me den un poco de luz en esto, hace muy poco que me inicié en las bases de datos y básicamente lo que he venido haciendo es gracias a foros como este
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
sin imagen de perfil

Limpiar filtrado de textbox

Publicado por Enrique Heliodoro (1664 intervenciones) el 18/11/2015 22:22:57
Asi, en una aproximación rápida, se me ocurren dos posibles soluciones:

.- Añadir un botón que reponga todo el contenido (la misma consulta sin la condición)
.- Añadir un condicional que se base en la longitud del texto, (por ejemplo: si es 'cero' quitar el condicional a la consulta)
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
sin imagen de perfil

Limpiar filtrado de textbox

Publicado por karla (31 intervenciones) el 18/11/2015 23:12:26
Gracias Enrique, fíjate que mi consulta es de unión, necesito tener enlistados todos los registros y hacerles el filtro, por lo que no tienen condicionantes. Estaba pensando que lo que requiero es restaurar el listado, no sé si me explico, noté que si borro el contenido a mano, se restablece el listado, pero no sé cómo poner eso en código...
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
sin imagen de perfil

Limpiar filtrado de textbox

Publicado por Enrique Heliodoro (1664 intervenciones) el 19/11/2015 01:21:40
No quisiera destrozar esquemas, pero hay un condicionante (condición, filtro .... llámale como gustes) que se aplica al origen de datos (que sea una consulta del tipo que sea es lo mismo, es 'un conjunto de datos').

select * ....==> campos que devolverá (el asterisco = todos)
from ConsultaUnion ....==> conjunto de datos ya conformado
where ...==> indicador de que ... se impone una condición
Nombre like '*" & Me.txtNombre.Text & "*'" .... ==> la condición

Si le 'quitamos el filtro' quedaría asi (y los mostraría todos):
Me.subFormBuscar.Form.RecordSource = "select * from ConsultaUnion"


Y si le ponemos el filtro queda asi:
Me.subFormBuscar.Form.RecordSource ="select * from ConsultaUnion" & " where Nombre like '*" & Me.txtNombre.Text & "*'"


Analizando la estructura, creo que no debería haber problemas, si se borra el contenido del cuadro de texto el 'filtro' quedaría asi:
Me.subFormBuscar.Form.RecordSource ="select * from ConsultaUnion" & " where Nombre like '**'"

Y (al menos en teoría) el asterisco implica la ambigüedad lo que debería devolver todos los registros
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
sin imagen de perfil

Limpiar filtrado de textbox

Publicado por karla (31 intervenciones) el 19/11/2015 01:34:51
Muchas gracias Enrique, no me destrozas nada al contrario me educas, soy más que nueva en esto de las bases de datos.

Me funcionó perfecto tu sugerencia, muchas gracias!!!!

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