Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
28 mai 2003 à 15:02
nadifnet
Messages postés1Date d'inscriptionmardi 9 août 2005StatutMembreDernière intervention18 novembre 2009
-
18 nov. 2009 à 21:20
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
nadifnet
Messages postés1Date d'inscriptionmardi 9 août 2005StatutMembreDernière intervention18 novembre 2009 18 nov. 2009 à 21:20
Merci Bq pour le code
philippe laschweng 1
Messages postés278Date d'inscriptionjeudi 14 avril 2005StatutMembreDernière intervention13 avril 20132 20 janv. 2006 à 14:23
Salut,
Les deux solutions fonctionnent avec les années bisextilles???
Je vais allé déclarer les variables !
Merci encore
Bye
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 20 janv. 2006 à 13:48
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és278Date d'inscriptionjeudi 14 avril 2005StatutMembreDernière intervention13 avril 20132 20 janv. 2006 à 13:38
Source intéressante ! Je me suis permis de la transformer en fonction !
Public Function age(DateNaissance As Date)
Dim a As Integer
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
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 27 sept. 2003 à 17:27
Tu fais bien de parler, Sibelle, vu l'utilisté de ce que tu met sur le site.
Au contraire, il est illogique de stocker l'age d'une personne dans une base de données !! Par contre, la date de naissance, qui elle ne change pas a lieu de l'etre. Pour connaitre l'age d'une personne, il ne te reste plus qu'a calculer, comme le fait Calisaga.
Le Soft en lui même n'est pas utile. Le script utilisé l'est déjà plus....
Sibelle07
Messages postés206Date d'inscriptiondimanche 14 septembre 2003StatutMembreDernière intervention25 mars 2005 27 sept. 2003 à 17:23
l'idée est bonne mais je ne voit pas a quoi sela me sert t'il :o
5 / 10
dbhorus
Messages postés1Date d'inscriptionjeudi 29 mai 2003StatutMembreDernière intervention29 mai 2003 29 mai 2003 à 16:58
mais à quoi il te sert ce prog ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 29 mai 2003 à 15:07
oui, encore des divisions en perspectives....
sebleboss2002
Messages postés189Date d'inscriptionlundi 30 décembre 2002StatutMembreDernière intervention 3 avril 2005 29 mai 2003 à 11:53
mouai.... jusque là, tout va bien. Mais ce serait encore plus mieux de donner le nombre de jours mois et années d'une personne.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 29 mai 2003 à 11:23
exact, tu retire la virgule si ca t'amuses, mais j'ai effectivement 19 ans.....
sebleboss2002
Messages postés189Date d'inscriptionlundi 30 décembre 2002StatutMembreDernière intervention 3 avril 2005 29 mai 2003 à 10:56
Alors tu as 19,4086242299795 ans, si j'ai bien compris ;)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 28 mai 2003 à 15:07
et moi qui pensait que ca suffisait ! :
AgeDeRenfield = ( date - cdate("31/12/1983"))/365.25
soit le nombre de jours entre les dates , divisé par 365.25 (année bisextiles)
bon, c'est pas parfait, mais ca fonctionne.......
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 28 mai 2003 à 15:02
ce serait bien de donner la declaration de ta procédure ...(qui ferait mieux , d'ailleurs d'être une fonction)
18 nov. 2009 à 21:20
20 janv. 2006 à 14:23
Les deux solutions fonctionnent avec les années bisextilles???
Je vais allé déclarer les variables !
Merci encore
Bye
20 janv. 2006 à 13:48
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
20 janv. 2006 à 13:38
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
27 sept. 2003 à 17:27
Au contraire, il est illogique de stocker l'age d'une personne dans une base de données !! Par contre, la date de naissance, qui elle ne change pas a lieu de l'etre. Pour connaitre l'age d'une personne, il ne te reste plus qu'a calculer, comme le fait Calisaga.
Le Soft en lui même n'est pas utile. Le script utilisé l'est déjà plus....
27 sept. 2003 à 17:23
5 / 10
29 mai 2003 à 16:58
29 mai 2003 à 15:07
29 mai 2003 à 11:53
29 mai 2003 à 11:23
29 mai 2003 à 10:56
28 mai 2003 à 15:07
AgeDeRenfield = ( date - cdate("31/12/1983"))/365.25
soit le nombre de jours entre les dates , divisé par 365.25 (année bisextiles)
bon, c'est pas parfait, mais ca fonctionne.......
28 mai 2003 à 15:02