J'ai un petit probléme, je cherche à arrondir à l'année suppérieur le résultat d'un calcule entre une date [D] (dite de naissance ) et la valeur Now.
mon code :
Dim calcul As Variant
A = DateDiff("y", [D], Now())
calcul = (A / 365)
A = Left(calcul, 2)
Exemple avec ce code :
- Une personne née le 01/07/98 [D] à 8 ans [A] le 18/07/06
- Une personne née le 01/08/98 [D] à 7 ans [A] le 18/07/06
le but est de de faire en sorte que toutes les personnes née en 98 est 8 ans et ainsi de suite pour 99 = 7ans, 00=6ans
A : l'âge
D : Date de naissance
Le but étant de calculer l'âge sur l'année de naissance et non pas pas sur le mois et/ou le jour.
Exemple toute personne née en 98 à 8 ans cette année
A = DateDiff("y", [D], Now())
calcul = (A / 365)
A = Left(calcul, 3)
A = Format(A, "#0")
Bah pourtant, un datediff("y") te donne la différence entre les 2 dates en années !
Fais ceci pour vérifier :
MsgBox [D]
MsgBox Now()
MsgBox DateDiff("y", [D], Now())
Voir déjà les dates qu'il te donne ainsi que le résultat du datediff.
Vous n’avez pas trouvé la réponse que vous recherchez ?