Access - Obtener diferencia entre fecha guardada y fecha actual

 
Vista:
sin imagen de perfil
Val: 32
Ha aumentado su posición en 25 puestos en Access (en relación al último mes)
Gráfica de Access

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Roberto (25 intervenciones) el 31/10/2021 23:46:33
Hola amigos, tengo un sistema de administración desarrollado en Access 2003, me pasé a Access 2016 y hay diferencias en el código VBA, solucioné algunas, pero no acierto con siguiente :

En VBA 2003 funciona

Private Sub FECHA_SERV_AfterUpdate()
'PREVIENE UN ERROR EN LA FECHA
If [FechaServicio] < Date - 20 Or [FechaFactura] > Date Then
Beep
MsgBox "Revise la fecha, si está bien prosiga", vbExclamation
End If
End Sub

Agradezco me puedan ayudar para que se ejecute correctamente en ACCESS 2016
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Anonimo (3306 intervenciones) el 01/11/2021 02:40:47
Bastante diferencia entre versiones, recomendaría revisar las referencias, han cambiado bastante entre A2003 y A2010 así que entre A2003 y A2016 .....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Joan
Val: 414
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Joan (86 intervenciones) el 01/11/2021 11:19:55
Hola,

Sí que funciona. Tienes un problema con la defición de los nombres de los textbox. Te has de referir a los textbox, no ha los nombres de la tabla a no ser que sean iguales, en A2003 tampoco creo que funcionara.

1
2
3
4
5
Private Sub FechaServicio_AfterUpdate()
If Me.FechaServicio < Date - 20 Or Me.Fechafactura > Date Then
Beep
MsgBox "Revise la fecha, si está bien prosiga", vbExclamation
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Anonimo (3306 intervenciones) el 01/11/2021 12:48:01
Los cambios de motor entre versiones de Access pueden generar problemas ya que no siempre se actualizan de forma correcta las librerías.

He visto este caso publicado en varias ocasiones y el problema no esta en identificar las variables, suele estar en que no entiende que DATE es la fecha del sistema y suelen fallar algunas referencias mas.

Es una posibilidad a tener en cuenta no una regla.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 32
Ha aumentado su posición en 25 puestos en Access (en relación al último mes)
Gráfica de Access

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Roberto (25 intervenciones) el 02/11/2021 11:48:11
Haré la prueba, la expresión está copiada del programa 2003 y es funcional.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Obtener diferencia entre fecha guardada y fecha actual

Publicado por jose (830 intervenciones) el 02/11/2021 08:26:27
mira a ver cambiando Date por now()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 32
Ha aumentado su posición en 25 puestos en Access (en relación al último mes)
Gráfica de Access

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Roberto (25 intervenciones) el 02/11/2021 11:48:37
Haré la prueba y comento.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Eduardo

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Eduardo (315 intervenciones) el 05/12/2021 15:49:45
No es cuestión de versiones, es que Access toma los campos FechaServicio y FechaFactura como texto, se deben convertir a fecha con la funcion Cdate(). Algo como:

Private Sub FECHA_SERV_AfterUpdate()
'PREVIENE UN ERROR EN LA FECHA
If CDate(FechaServicio) < Date - 20 Or CDate(FechaFactura) > Date Then
Beep
MsgBox "Revise la fecha, si está bien prosiga", vbExclamation
End If
End Sub

Si no utiliza Cdate() debe darle formato a cada campo en Propiedades , Formato.


fecha_propiedades
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Anonimo (3306 intervenciones) el 06/12/2021 20:34:08
Si en el origen los datos están definidas como tipo DATE, en los formularios, informes y consultas serán utilizadas como datos de fecha (tanto en A2003 como en A2016).

Una conversión en principio innecesaria puede ser contraproducente según donde se efectúe dado que puede intercambiar el mes y el día.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 32
Ha aumentado su posición en 25 puestos en Access (en relación al último mes)
Gráfica de Access

Obtener diferencia entre fecha guardada y fecha actual

Publicado por Roberto (25 intervenciones) el 15/12/2021 22:29:37
Muchas gracias, voy a probar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar