DateTime: Calculer l'âge |
Author(s) Dev Ashish |
|
---Soumis par Dev Ashish---
Calculer l'âge.
(Q) Comment calculer l'âge d'une personne si on connaît sa date de
naissance?
(A) Il y a plusieurs solutions. Je ne liste que deux d'entre elles apparues
récemment dans les groupes de discussions:
- **Soumis par Michel Walsh**
Supposant que la date de naissance est un champ nommé [BDate], de type de
données date, on peut alors utiliser le calcul suivant
Age=DateDiff("yyyy", [Bdate], Now())+ _
Int( Format(now(),
"mmdd") < Format( [Bdate], "mmdd") )
Alternative: Vous pouvez utiliser la fonction suivante
Function Age(Bdate, DateToday) As Integer
If Month(DateToday) < Month(Bdate) Or (Month(DateToday) = _
Month(Bdate) And Day(DateToday) < Day(Bdate)) Then
Age = Year(DateToday) -
Year(Bdate) - 1
Else
Age = Year(DateToday) -
Year(Bdate)
End If
End Function
---Soumis par Tim Walters---
Voici un calcul détaillé d'âge
Public Sub CalcAge(vDate1 As Date, vdate2 As Date, ByRef vYears As Integer,
ByRef vMonths As Integer, ByRef vDays As Integer)
vMonths = DateDiff("m", vDate1, vdate2)
vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
If vDays < 0 Then
vMonths = vMonths - 1
vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
End If
vYears = vMonths \ 12
vMonths = vMonths Mod 12
End Sub
|