ACCESS Crear una consulta con una condición en el criterio y si no se cumple dejar pasar todos los datos

Necesitaría crear una consulta con una condición con dos estados

Primer estado:  Si btn = "Hoy  +  3 días" entonces, habiendo pasado previamente la fecha en número le digo que me muestre <=Fecha() +3 días (esta parte funciona)

SiInm([btn]="Hoy  +  3 días";Der(Format(Fecha();"ddmmaaaa");4) & Medio(Format(Fecha();"ddmmaaaa");3;2) 

Segundo estado: Deja pasar todos los valores como sino tuviese ningún criterio. Esta es la parte que no consigo sacar, he probado con like &'*' y no me funciona.

2 respuestas

Respuesta
2

Carlos: No acabo de interpretar si "ese filtrado" lo quieres hacer en la fila de Criterios de una consulta que ya tienes o bien en un Formulario. Por lo que citas, parece que sea en los criterios, ya que pones el SiInm, pero podría ser que lo hicieras para dar una pista.

En ambos casos si pones la SQL completa aquí y una imagen de la vista de diseño de la consulta si es que lo es, ayudaría a dar una respuesta con probabilidades de exito. Aparte de esas dos formulaciones según veo la segunda, quizá se puede simplificar poniendo:

SiInm([btn]= Fecha()+3;Format(Fecha();"aaaamm") y aquí falta algo

Un saludo >> Jacinto

Buenas tardes y muchísimas gracias Jacinto Trillo Jareño e  Julián González Cabarcos, por vuestra respuesta.


 Con la respuesta de Julián González Cabarcos ya estaría resulto aunque preguntaba si había algún carácter comodín que dejara pasar todos datos en la segunda condición de SiInm, como has hecho en tu ejemplo que [fechapedido] que funciona muy bien.

Disculpad que no enviara poca información, pero quería transmitir mi duda intentando resumirlo y evitar extenderme. Desgloso mi pregunta desde el principio:

El botón que se visualiza en la imagen, está dentro de un informe y cada vez que se presiona el botón el texto cambia desde una istrucción en vba usando la propiedad  Caption. Este botón hace que cuando lo presionamos nos muestre toda la información recogida en un subInforme con vista predeterminada en  "hoja de datos" o que solo muestre tres días (Hoy + 3 días). Usamos como parte de la condición el Caption del btn.

El capo filtro contiene fecha en formato europeo y con la función Der, Izq y Medio lo que pretendo hacer es convertir el campo de fecha a numérico para intentar evitar posibles errores con a la hora de sumar los días (tal vez no es necesario, pero quería evitar posibles resultados no controlados).

criterio = <=SiInm([btn]="Hoy  +  3 días";Der(Format(Fecha();"ddmmaaaa");4) & Medio(Format(Fecha();"ddmmaaaa");3;2) & Izq(Format(Fecha();"ddmmaaaa");2)+3;Format(Fecha();'aaaa') & Der([Fecha Min];2) & Izq([Fecha Min];2))

En la segunda parte de la condición he usado la respuesta de  Julián González Cabarcos.

 Disculpad nuevamente no haber dado toda la información, pero temía que si me extendía mucho no se tratase mi pregunta por ser muy liosa. 

Carlos: Lo más importante es que lo hayas resuelto. Un saludo >> Jacinto

Respuesta
1

Me pasa lo mismo que a Jacinto, no entiendo donde está ese BTN, porqué tienes que usar las funciones Right y Mid, etc. Por ejemplo, si tengo una tabla Pedidos

Puedes ver que hay 830 registros(bendita Neptuno)

Construyo una consulta a la que añado un campo BTN(ya te he dicho que ni idea de donde está)

Y en el criterio le pongo lo que ves en zoom

Cuando la voy a abrir me pregunta lo de Escriba algo(ya que no sé como la tienes hecha). Si escribo Hoy + 3 dias

Al abrirse

Solo los de Mayo y BTN con formato aaaamm

Si por el contrario, cuando la voy a abrir escribo otra cosa

Al abrirla

Puedes ver que me saca todos

Por eso convendría que concretaras más.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas