** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Filtrar datos
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoFiltrar datos

 Responder Responder
Autor
Mensaje
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Tema: Filtrar datos
    Enviado: 03/Marzo/2020 a las 19:50
 Hola a todos.
Pretendo filtrar registros en un recordset de manera que cumplan con la condición que la [fechaFactura] esté comprendida entre la fecha del sistema Date y seis dias antes Date-6.
El siguiente código no filtra. Sospecho que el problema está en el formato de fecha de Date y FechaFactura.

 StringSql = "SELECT * FROM G_Alquileres_Desglose WHERE [FechaFactura] BETWEEN #" & Date & "# and #" & Date - 6 & "#"
 Set Rs = CurrentDb.OpenRecordset(StringSql, dbOpenDynaset, dbSeeChanges)

Podéis, por favor, ayudarme ?

Saludos.


Editado por rocjfl-b - 03/Marzo/2020 a las 19:50
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14428
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 20:09
Las fechas siempre en formato yanqui:

#" & Format(Date, "mm/dd/yyyy") & "#
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 20:49
  Hola Mihura.

De esta forma, visual da un error de síntesis.

 StringSql = "SELECT * FROM G_Alquileres_Desglose WHERE #" & Format(FechaFactura, "mm/dd/yyyy") & "# BETWEEN #" & Format(Date, "mm/dd/yyyy") & "# and #" & Format(Date - 6, "mm/dd/yyyy") & "#"

Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14926
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 21:43
Vamos a ver...

Lo que va en formato yanqui es la fecha, no el nombre del campo. Lo que has puesto después de la WHERE... no se lo que es.

SELECT * FROM G_Alquileres_Desglose WHERE FechaFactura Between #" & Format(Date, "mm/dd/yyyy") & "# And #" & Format(Date - 6, "mm/dd/yyyy") & "#"

Un saludo
PD: sintaxis, no síntesis Wink

Xavi, un minyó de Terrassa

Mi web
Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 21:55
Hola Xavi,
La ...sintaxis... ahora es correcta, pero no filtra registros.
Después de WHERE, trato de filtrar aquellos registros cuyo valor del campo FechaFactura esta comprendido entre la fecha del sistema y seis días antes.

Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14926
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 22:02
Perdón... creo que tienes que invertir las fechas: primero Date-6 y luego Date

Xavi, un minyó de Terrassa

Mi web
Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 03/Marzo/2020 a las 22:26
¡¡  Funciona !!.... Efectivamente primero Date-6.  Mucha gracias Xavi.
Mucha gracias Mihura.
Un saludo a todos.
Se puede cerrar el hilo.

Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable