Formulario de búsqueda

Hola. Trabajo en mi consulta con una base de datos de access, en este formulario tengo que ingresar en un cuadro de texto el nombre del diagnostico, en otro el código del diagnóstico, en otro la ocupación, y en otro el código de la ocupación. Tengo dos tablas, que son Diagnósticos con el nombre y código en columnas aparte, y Ocupaciones también con nombre y columnas aparte.
Lo qué necesito es que en un formulario de búsqueda pueda escribir una palabra (en un cuadro de texto) y mediante un botón de comando hacer la búsqueda y que me muestre todos los resultados coincidentes en un subformulario(?) ¿O tabla(?) Dentro del mismo formulario de búsqueda, eligiendo la tabla a buscar en un grupo de opciones (Diagnósticos y Ocupaciones), pues estas listas son extremadamente extensas y siempre tengo que buscar "manualmente".
Agradecería mucho la ayuda.

1 respuesta

Respuesta
1
Porque no lo vuelves cuadro combinado y en la pestaña de datos como origen de datos le pones una consulta a las tablas que tienes con las condiciones que requieras.
Por lo que entiendo vas a poner nombre y de acuerdo a como se llave debes de obtener los otros dos o 3 datos.
Hola joecuack, buenas tardes.
Funciona bien tu solución, sin embargo hay tres detalles, uno es que aparecen intercalados en la lista algunos registros que no se relacionan con la búsqueda, ¿cómo hago para que no aparezcan? ; Y la búsqueda reporta por la primera palabra que aparece en el campo de la tabla de diagnósticos, ¿cómo hago para que reporte el registro si tiene la palabra en otro lugar del campo? ; y finalmente, ¿Cómo hago para que el cuadro de texto del código diagnóstico se llene automáticamente? ¿Es con código VBA?
Aclaro, en el formulario tengo un cuadro de testo para nombre del diagnóstico y otro para el código, la búsqueda me llena el del nombre, pero no el del código.
Si te están apareciendo registros que no corresponden es que tu consulta esta muy abierta reduce las opciones a coincidencia para que no aparezcan los que no quieres,
y con respecto a que es la primera palabra tendrías que hacer una función que leyera solo la cantidad de letras a buscar y en que orden dentro del campo. Porque si tu búsqueda es cualquier parte del campo siempre te obtendrá cuando vea la palabra que tu le pones.
Con tu ultima opción, yo estoy trabajando en algo similar pero no he podido encontrar una en la que lo meta directamente, todo indica que si, tiene ser con VBA pero no tengo aun ese código, si logro tenerlo antes con gusto te lo proporcionaría.
Hola joecuack, buenas noches. Tienes razón, con coincidencia funciona bien. Tu ayuda ha sido muy útil, y me ahorra tiempo. Leyendo solo una cantidad determinada de letras, aparecen más registros muchos de los cuales no son relevantes, funciona mucho mejor cerrando la consulta, y me satisface el resultado.
Agradezco mucho tu dedicación, ha sido muy buena, y con los resultados esperados.
adrianluque

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas