Formulario de búsqueda de algún producto en Microsoft Access

A ver si tu me puedes resolver un problemilla que tengo con access.
Intenté crear un formulario parecido a aquellos buscadores de coches de
Segunda mano, casas, etc donde los elementos utilizados son controles
De cuadros combinados en donde se elige una marca o un modelo...
Bueno pues yo quiero que lo que escriba/elija en estos cuadros
Combinados me acoten una búsqueda que realizo con un cuadro de lista.
Hasta ahí todo bien. En los criterios de cada campo hago referencia a
Distintos cuadros combinados del formulario y ejecuto macros de
Actualizar valores para que la búsqueda en el cuadro de lista se actualice
Al cambiar los valores en los cuadros combinados. Todo funciona de
Maravilla, pero tengo un problema. Quisiera utilizar un comodín como
"cualquiera" que me permitiera que tuviera en cuenta en la búsqueda
Todos los registros referidos a ese cuadro combinado.
Ej: poner "todos" en un cuadro combinado de coches para que no limite
Por ese campo la búsqueda.
No sé hacerlo. Los cuadros combinados cogen los valores de distintas
Tablas y en casi todas ellas existe un valor que es cadena vacía aunque
Me gustaría que fuera "cualquiera", estuviera predeterminado y saliera el
Primero aunque no sea así si se hace alfabéticamente.
Creía resuelto el problema cuando encontré la función de flujo de
programa llamada SiInm («expresión»; «parteVerdadera»; «parteFalsa»)
Y la introduje en los criterios de búsqueda que daban los resultados en el
Cuadro de lista. En expresión pregunto si el control a evaluar es distinto
De cadena vacía, en parte verdadera meto el valor del control y si es
Falso le digo "*" o no le pongo nada... El caso es que es aquí donde me
Falla. Cuando introduzco en el cuadro combinado un valor la búsqueda se
Realiza. Cuando pongo el valor cadena vacía (que además es el
Alfabéticamente) no realiza ninguna búsqueda porque no le debe valer
El valor que devuelve la función SiInm. Como te digo probé también con
"*" Pero tampoco me valió.

1 respuesta

Respuesta
1
Si utilizas una sentencia SQL tendrás el problema resuelto y, ademas, te sera más fácil montar el criterio de búsqueda puesto que admite caracteres comodín
Seria algo así como
SELECT * FROM TABLA WHERE CRITERIO LIKE *
Donde
El primer asterisco significa que te devuelva todos los campos de la tabla
TABLA corresponde al nombre de la tabla que quieres consultar
CRITERIO es el campo por donde haces la búsqueda. Puedes poner varios si utilizas operadores lógicos (AND y OR)
LIKE que corresponda
El segundo asterisco seria todo. Podrías usar búsquedas del tipo A* etc.
Te recomiendo que juegues con estas consulta yendo a una consulta en modo SQL
También encontraras muchísima ayuda sobre sentencias SQL en internet
La ventaja, ademas de esta, es que si acabas dominando este lenguaje podrás dar el salto inmediatamente a SQL Server y otras bases de datos más profesionales.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas