Filtrar un formulario a través de combos de otro

Tengo una duda que estoy seguro que a más de uno le parecerá una tontería, pero que a mí me está volviendo loco :-( A ver si alguien me puede echar un cable.
Tengo dos formularios, y lo que quisiera, es que al introducir unos valores en el primero (HELP DESK), use esos valores para mostrar solo los registros coincidentes en un segundo formulario (INCIDENCIAS PENDIENTES). Adjunto una imagen donde se verá mejor:

http://gyazo.com/17fdb869eb4676b09474275d4328504f

El segundo formulario (INCIDENCIAS PENDIENTES) está basado en una consulta que coge los valores de los campos de las cajas de texto del primer formulario (HELP DESK). El caso es que a la hora de poner los criterios de consulta, solo consigo que o me muestre todos los valores, o no me muestre ninguno.
Si por ejemplo en el texto AGENTE pongo un valor, y en RUTA pongo otro, me muestra todos aquellos en los que coincida en agente y además los que sean de esa ruta, pero yo quiero que me sume los filtros.
Poner todos los criterios en la misma fila no me sirve porque quiero que cuando todos los campos estén vacíos muestre todos los registros.
Os pongo también hasta donde he llegado con los criterios de consulta, a ver si os da una pista

Seguro que es una chorrada, pero no doy con ello :-(((

1 Respuesta

Respuesta
1

Prueba a añadir el ESTATUS "pendiente" en otra linea de criterios de la consulta.

Si esto no te sirve, la mejor opción, ceo que sería construir un filtro por código y quitar los criterios de la consulta, menos el de ESTATUS.

En este enlace de Neckkito, se explica cómo construir el filtro múltiple: http://siliconproject.com.ar/neckkito/index.php/ejemplos-explicados/formularios/93-ejemplos-explicados/ejemplos-de-formularios/194-crear-un-filtro-multiple

En tu caso, el código lo pondrías en el botón que te abre el formulario INCIDENCIAS PENDIENTES, antes de la linea que te abra dicho formulario, y cambiando las dos últimas lineas del código de Neckkito por estas:

'Aplicamos el filtro al formulario

DoCmd. OpenForm "PENDIENTES",,, miFiltro

De esta forma, se te abrirá el formulario filtrado por los valores seleccionados en los combos. Fíjate que el nombre del formulario sea el correcto.

Nada, lo he intentado de todas las formas pero no hay manera, no doy con ello de ningún modo... :-(

Os pongo aquí el archivo a ver si sabéis decirme por qué no funciona el botón de filtrar (no hace nada). El formulario en el que quiero realizar el filtro es el que se llama PENDIENTES, que está basado en una consulta sin criterios (por diferentes motivos aunque no creo que eso influya).

De verdad que estoy desesperado ya, no sé qué más hacer.

Archivo

Por cierto que por intentar simplificar, en vez de filtrar un formulario por otro, lo he intentado en el mismo creando algunos combos para realizar el filtrado, pensando que sería más sencillo, pero me parece que ha sido trabajo tirado a la basura :-(

Tengo que presentarlo mañana, diré que es una versión previa bla bla bla, a ver si me lo aprueban para seguir trabajando en ello.

Te dejo al archivo con el filtro programado aquí

Te lo programé en el botón del formulario principal, y en el botón filtro del formulario "pendientes".

Madre mía... ¡Está increíble!!! Es justo lo que necesitaba, pero no funciona el filtro a través del campo RUTA ¿?¿?

He estado revisando el código del botón (en el principal y en el de pendientes) y no consigo averiguar las diferencias en el patrón entre el resto de campos y la Ruta, a ver si faltaba algún símbolo y por eso no iba ese filtro.

De VBA no sé prácticamente nada y no doy para más.

¿Podrías decirme por favor por qué el campo RUTA no funciona en el filtro?

No sabes cuánto te agradezco tu ayuda, con gente como tú Internet es un lugar maravilloso, dan ganas de ayudar en todo lo que se pueda a todo el mundo.

En serio, un millón de gracias por tu ayuda.

Ya vi el error, estaba tratando la ruta como si fuera un dato numérico y es de texto... La diferencia, si te fijas, es que los datos de texto tienen que ir entre comillas simples ('):

miFiltro = miFiltro & " AND [RUTA]='" & vRuta & "'"

pues la ruta es un campo de texto en la tabla, frente a:

miFiltro = miFiltro & "AND [AGENTE]=" & vAgente

Que es de tipo numérico

Aquí el archivo corregido.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas