dada la fecha de nacimiento de una persona, ??como calcular su edad? aquia hay un par de ejemplos que no funcionan de forma muy efectiva: format(date() - dob, yy ) datediff( y , dob, date) int(datediff( d , dob, date)/365.25) datediff( y , ..., ...) solamente sustrae la parte correspondiente al a?o en la fecha, sin hacer referencia meses o diaas. esto significa que debemos sustraer uno si la persona no ha tenido todaviaa su cumplea?os este a?o. la expresion siguiente regresa el valor true si la persona todaviaa no ha tenido su cumplea?os este a?o. dateserial(year(date), month(dob), day(dob)) > date true equivale a -1 tambian por a?adir esta expresion, access sustrae uno si el cumplea?os no ha ocurrido. la funcion quedariaa de la siguiente forma. function age(dob, optional vdate) if not isdate(vdate) then vdate = date if isdate(dob) then age = datediff( yyyy , dob, vdate) + (dateserial(year(vdate), month(dob), day(dob)) > vdate) else age = null end if end function |