Problema Quitar Filtro access

He creado una consulta con campos de dos tablas distintas para utilizarla como Origen de datos de un formulario. Todo va bien, pero cuando realizo un filtro por formulario y busco un dato que no existe (por ejemplo, busco en el campo Nombre alguien que se llame Pepe y no hay ningún registro con ese criterio), se me pone la pantalla en blanco y no me deja ni siquiera quitar el filtro, con lo que tengo que cerrar el formulario y volverlo a abrir. No sé qué puede pasar, porque tengo otros formularios similares y no me da ese problema.

He intentado crear una condición en el evento Al aplicar filtro, de forma que si el filtro no encuentra ningún registro, que cierre el formulario y lo vuelva a abrir, y así volver a tener el filtro quitado, pero mis conocimientos en visual basic dejan bastante que desear.

1 respuesta

Respuesta
1

Me da a mi que el problema viene dado por la consulta, al ser entre dos tablas...

Puedes probar con este código en el evento Al aplicar filtro (no lo probe y no sé si funcionará, que no estoy en el PC):

Dim rst as Recordset

Set rst=Me.RecordsetClone

if rst.recordcount=0 then me.filterOn=false 'Si no hay registros, no aplicamos el filtro

rst.close

set rst=Nothing

Ya me dirás si esto funcionó.

Gracias por tu respuesta.

He estado probando, a ver si quitando la consulta como origen de los datos del formulario evitaba ese problema, pero me pasa lo mismo cuando pongo los campo uno a uno.

También he probado la solución que me has dado, que sería estupenda, pero no me hace nada. Yo he copiado tal cual la instrucción que has puesto.

Saludos

¿Me puedes mandar una copia de la BD, para verla y probar cosas? Súbela a un servidor y pega por aquí el enlace de descarga. Tan pronto tenga un rato, me pongo con ella. Si la BD tiene datos "confidenciales", bórralos y deja alguno de ejemplo, para hacer pruebas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas