Consulta En Access Me Muestre Todos Los Registros Si Selecciono Criterio En Cuadro Combinado

Espero Se Encuentren Muy Bien.

Tengo Un Formulario Llamado Filtroprograma, El Cual Contiene Un Subformulario Llamado

Subformulario Filtro Y Este Tiene Como Origen Una Consulta Llamada Filtro.

En La Consulta Filtro, Existe Un Campo Llamado Programa El Cual Puse Como Criterio [Formularios]![Filtroprogramas]![combprograma], Osea que en el formulario Filtroprograma al elegir en un cuadro combinado llamado Combprograma un programa me aparecen en el subformulario todos los registros con el programa seleccionado.

El problema es como hago para que al dejar el cuadro en blanco o oprimiendo un botón me aparezcan todos los registros de nuevo sin importar el programa?

Muchas gracias de ante mano por su ayuda, Dios los bendiga.

Respuesta
1

Para hacer lo que quieres se necesita emplear un poco de programación en VBA (no se si sabes programar en VBA).

Hay varias formas de hacerlo.

1. Crear el origen de datos de forma directa.

2. Crear la consulta origen de datos del subformulario de forma dinámica.
En ambos casos has de saber programar en VBA y conocer el lenguaje SQL; no es excesivamente complicado, pero es necesario conocer estas 2 cosas

3. Cambiar el origen de datos del subformulario de forma dinámica.

En este caso, es necesario que sepas VBA.

Dime cuales son tus conocimientos, y entonces te podré ayudar un poco mejor.

Sinceramente Son Muy Básicos,Yo Mas Que Todo Uso Macros Consultas, Condiciones Como If, Case O VBA Y En SQL Muy Poco, No le He Encontrado Uso (Disculpa Si Soné Muy Ignorante). Si Puedes Explicarme Cual Es La Mejor Manera A La Hora De Trabajar Te Lo Agradecería. Dios Te Bendiga.

Puedes poner un par de botones, en uno de ellos, para quitar los filtros, tienes que escribir lo siguiente:

<span class="pln">me</span><span class="pun">.[Subformulario Filtro].</span><span class="pln">form</span><span class="pun">.</span><span class="pln">recordsource </span><span class="pun">=</span><span class="str">"SELECT * FROM Filtro"
me.[Subformulario Filtro].form.requery</span>

Y<span style="line-height: 1.5em;"> en el otro, para activar los filtros</span>

me.[Subformulario Filtro].form.recordsource = "SELECT * FROM Filtro WHERE Programa  = '" & me.combprograma & "'"
me.[Subformulario Filtro].form.requery

Es lo más sencillo que se me ocurre.

Muchas Gracias Por Tu Ayuda Experto,

También Encontré Una Solución Poniendo En El Criterio De La Consulta Del Campo Programas Esto:

Como SiInm(EsNulo([Formularios]![Filtroprogramas]![combprograma]),"*",[Formularios]![Filtroprogramas]![combprograma])

Dios Te Bendiga.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas