Imprimir página | Cerrar ventana

Error al filtrar fechas en un recordset

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=86934
Fecha de impresión: 26/Marzo/2026 a las 19:25


Tema: Error al filtrar fechas en un recordset
Publicado por: josepferrer
Asunto: Error al filtrar fechas en un recordset
Fecha de publicación: 26/Mayo/2024 a las 15:01
Intento crear un Recorset mediante un filtrado de una fecha que esta en un cuadro de texto(txtNextdate) y no me funciona, alguien sabe como hacerlo ?
Busco extraer la suma de los importes de los registros cuyo campofecha ( visaDatum) sea anterior o igual a la fecha almacenada en el cuadro de (txtNextdate)

Private Sub Form_Open(Cancel As Integer)
Dim MIDB As Database, MIRS As Recordset,  douNext As Double
Set MIDB = DBEngine.Workspaces(0).Databases(0)

    Set MIRS = MIDB.OpenRecordset("SELECT * FROM conVisanext " _
                       & "WHERE visaDatum <=   " & txtNextdate)
    douNext = 0
        Do Until MIRS.EOF
            MIRS.Edit
                douNext = douNext + MIRS![visaImport]
                douNext = Round(MIRS![douNext], 2)
            MIRS.Update
            MIRS.MoveNext
        Loop
    MIRS.Close
MIDB.Close
txtNext = douNext
.../...



Respuestas:
Publicado por: Mihura
Fecha de publicación: 26/Mayo/2024 a las 15:20
Hola, bienvenido.

Puedes tomar dos caminos:

1.- le pasas la fecha en formato yanqui:    #mm/dd/yyyy#
2.- le pasas la fecha en formato numérico, long al no tener fecha hora:    Str(CLng(Mifecha))


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: josepferrer
Fecha de publicación: 26/Mayo/2024 a las 17:38
Grcias por tu rapida ayuda, te explico mejor:
el valor almacenado en el cuadro de texto la obtengo de:

Nextdate = DateAdd("m", 1, MIRS![visaexPeriodOut])

de donde :"isaexPeriodOu"t es un campo tipo fecha
concretamente en este caso es: 24-05-21
y le añado 1 mes para que resulte 24-06-21 que es el valor almacenado en el campo que actua de filtro para la consulta , entiendo que si los valores de la tabla estan en este formato AA-MM-DD , deberia funcionar el filtro ... o no ?


Publicado por: josepferrer
Fecha de publicación: 26/Mayo/2024 a las 17:47
Perdona Jesús , no tenia el ordenador a mano y no probè tus soluciones. Ahora lo he provado con el 2do paso" Str(CLng(Mifecha))" y ha funcionado perfectamente. Eres un crack, muchisimas grácias, llevaba todo el santo dia dandole al cerebro, goggleando y ninguna solución, hasta que me acordé de vuestro FORUM que siempre me habia solucionado mis dudas y zas, he visto la luz.
Gracias de nuevo
Que tengas una feliz tarde de domingo
Cpordiales saludos
josep



Imprimir página | Cerrar ventana