Formato de fechas introducidas en el formulario de una base de datos

Hola y gracias de antemano!
Tengo creado un formulario donde aparecen "Fecha Nacimiento" y "Edad".
En Fecha Nacimiento he creado un procedimiento de evento que en Después de Actualizar sale EDAD= DATE-[FECHA NACIMIENTO]para que al entrar el día me de automáticamente la edad. Pero tengo un problema. Las personas nacidas del 1929 y anteriores me sale la edad con formato año, es decir, 1875.
Y a partir de 1930 me sale bien, 74.
¿Cuál es la solución?

1 Respuesta

Respuesta
1
Ten en cuenta que Access resta a "huevo" los días, y para él, el día 4 de Junio no termina hasta las 24:00. Si embargo los cumpleaños nosotros lo consideramos desde las 00:00 de ese día.
Por lo que si quieres que al empezar el día 4 te ponga la nueva edad tienes que poner
Edad = Format(Date + 1 - [Fechanac], "yy")
Le suma un día a la fecha de sistema y entonces a las 00:00 del día 4 ya te pone 50 años.
Lo siento ya me había bloqueado. Que vergüenza!
Perdona por las molestias, pero me sigue surgiendo un problema.
Partiendo de la fecha de hoy 4/Jun/2004 si coloco como fecha nacimiento 3/Jun/2004 me da 50 años cuando tendrían que ser 49 y al colocar 5/Jun/2004 me da 49 años cuando tendrían que ser 50. Es decir va al revés. ¿Sabes dónde está el problema?
Gracias y perdón.
Hombre, si nació el 3 de Junio de 1954, lo quiera él o no, tiene 50 años. Y si nació el 5 de Junio de 1954, lo siento por él pero todavía tiene 49 años.
Ahora el formato es correcto, pero al introducir fecha nacimiento por ejemplo, 4 Junio 1954, la edad me sale 49 años y estando hoy a 4 Junio del 2004, me tendría que dar 50 años.
La solución es poner como formato del campo Fecha General, por tanto escribir la edad como dd/mm/aaaa. En el cuadro de texto Edad, no ponerle formato, y en su origen de datos poner
=formato(fecha()-[fecha nacimiento];"aa")
Un saludo y no te olvides de cerrar la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas