DÉTERMINER L'ÂGE À PARTIR DE LA DATE DE NAISSANCE

Signaler
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
-
nadifnet
Messages postés
1
Date d'inscription
mardi 9 août 2005
Statut
Membre
Dernière intervention
18 novembre 2009
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7259-determiner-l-age-a-partir-de-la-date-de-naissance

nadifnet
Messages postés
1
Date d'inscription
mardi 9 août 2005
Statut
Membre
Dernière intervention
18 novembre 2009

Merci Bq pour le code
philippe laschweng 1
Messages postés
278
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
13 avril 2013
1
Salut,

Les deux solutions fonctionnent avec les années bisextilles???
Je vais allé déclarer les variables !

Merci encore

Bye
Renfield
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
61
le résultat est correct....
n'oublie pas de déclarer tes variables :

Dim année_nais As Integer
Dim mois_nais As Integer
Dim jour_nais As Integer
Dim année As Integer
Dim mois As Integer
Dim jour As Integer

à noter que tu pourrais faire :
Public Function age(DateNaissance As Date) as integer
age = Int(DateDiff("d", DateNaissance, Date) / 365.25)
End Function
philippe laschweng 1
Messages postés
278
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
13 avril 2013
1
Source intéressante ! Je me suis permis de la transformer en fonction !

Public Function age(DateNaissance As Date)
Dim a As Integer

année_nais = DateTime.Year(DateNaissance)
mois_nais = DateTime.Month(DateNaissance)
jour_nais = DateTime.Day(DateNaissance)

année = DateTime.Year(Date)
mois = DateTime.Month(Date)
jour = DateTime.Day(Date)

a = année - année_nais

If mois_nais > mois Then age = a - 1
If mois_nais < mois Then age = a
If mois_nais = mois Then GoTo line1

GoTo lastline
line1:
If jour_nais > jour Then age = a - 1
If jour_nais <jour Then age a

lastline:
End Function