Si, en A! j'inscris 370, comment avoir en B1 comme r=E9sultat 1 an et 5 jou=
rs ?
ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout =E7=
a sans =E9gard aux ann=E9es bissextiles....
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça sans égard aux années bissextiles....
Merci beaucoup
Denys
Bonsoir,
Lire le fil de Laurent B. du 08/11/2013 19:41
"Problème différence entre 2 dates"
Cela devrait répondre à la question.
--
Salutations
JJ
--
Salutations
JJ
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
cb5d1962-46cb-4aed-a986-4930fabcfba3@googlegroups.com...
Bonjour,
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ?
ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça sans égard aux années
bissextiles....
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça sans égard aux années bissextiles....
Dans ce type d'aventure, la notion de mois est alambiquée. Un mois peut avoir 28, 29, 30, 31 jours.
Les calculs qui sont effectués utilisent le 1/1/1900 comme point de départ. En fait, si on additionnait une valeur numérique à la date 1/1/1900, quel serait l'écart entre cette nouvelle date et 1/1/1900 en jours - mois - année
'------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range
Set Rg = Intersect(Range("A:A"), Target) If Not Rg Is Nothing Then Application.EnableEvents = False For Each C In Rg If IsNumeric(Target) Then X = CDate(Target) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If C.Offset(, 1) = An & Z & Mois & " mois " & Jour & Y End If Next Application.EnableEvents = True End If End Sub '-------------------------------------------
MichD --------------------------------------------------------------- "Denys" a écrit dans le message de groupe de discussion :
Bonjour,
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça sans égard aux années bissextiles....
Merci beaucoup
Denys
Bonjour
Copie ce qui suit dans le module de ta feuille :
Dans ce type d'aventure, la notion de mois est alambiquée.
Un mois peut avoir 28, 29, 30, 31 jours.
Les calculs qui sont effectués utilisent le 1/1/1900 comme point de départ.
En fait, si on additionnait une valeur numérique à la date 1/1/1900, quel
serait l'écart entre cette nouvelle date et 1/1/1900 en jours - mois - année
'-------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Jour As Integer, Mois As Integer, An As Integer
Dim X As Date, Z As String, Y As String, Rg As Range
Dim C As Range
Set Rg = Intersect(Range("A:A"), Target)
If Not Rg Is Nothing Then
Application.EnableEvents = False
For Each C In Rg
If IsNumeric(Target) Then
X = CDate(Target) + DateSerial(1900, 1, 1)
An = Year(X) - 1900
Mois = Month(X) - 1
Jour = Day(X) - 1
If Jour > 1 Then
Y = " jours "
Else
Y = " jour "
End If
If An > 1 Then
Z = " ans "
Else
Z = " an "
End If
C.Offset(, 1) = An & Z & Mois & " mois " & Jour & Y
End If
Next
Application.EnableEvents = True
End If
End Sub
'-------------------------------------------
MichD
---------------------------------------------------------------
"Denys" a écrit dans le message de groupe de discussion :
cb5d1962-46cb-4aed-a986-4930fabcfba3@googlegroups.com...
Bonjour,
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours
?
ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça
sans égard aux années bissextiles....
Dans ce type d'aventure, la notion de mois est alambiquée. Un mois peut avoir 28, 29, 30, 31 jours.
Les calculs qui sont effectués utilisent le 1/1/1900 comme point de départ. En fait, si on additionnait une valeur numérique à la date 1/1/1900, quel serait l'écart entre cette nouvelle date et 1/1/1900 en jours - mois - année
'------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range
Set Rg = Intersect(Range("A:A"), Target) If Not Rg Is Nothing Then Application.EnableEvents = False For Each C In Rg If IsNumeric(Target) Then X = CDate(Target) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If C.Offset(, 1) = An & Z & Mois & " mois " & Jour & Y End If Next Application.EnableEvents = True End If End Sub '-------------------------------------------
MichD --------------------------------------------------------------- "Denys" a écrit dans le message de groupe de discussion :
Bonjour,
Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout ça sans égard aux années bissextiles....
Merci beaucoup
Denys
MichD
Un petit exemple pour illustrer la difficulté :
D'après toi, le chiffre 400 donne 1 an, 1 mois et 5 jours
L'année 1900 n'est pas une année bissextile. Si j'avais choisi une année de référence bissextile, le résultat serait légèrement différent. À toi de choisir!!!
L'année 1900, celle choisie comme référence à 365 jours Le mois de janvier qui est le mois de référence à 31 jours 400 - (365+31) = 4 jours et non 5 jours comme dans ton exemple.
D'après toi, le chiffre 400 donne 1 an, 1 mois et 5 jours
L'année 1900 n'est pas une année bissextile. Si j'avais
choisi une année de référence bissextile, le résultat serait
légèrement différent. À toi de choisir!!!
L'année 1900, celle choisie comme référence à 365 jours
Le mois de janvier qui est le mois de référence à 31 jours
400 - (365+31) = 4 jours et non 5 jours comme dans ton exemple.
D'après toi, le chiffre 400 donne 1 an, 1 mois et 5 jours
L'année 1900 n'est pas une année bissextile. Si j'avais choisi une année de référence bissextile, le résultat serait légèrement différent. À toi de choisir!!!
L'année 1900, celle choisie comme référence à 365 jours Le mois de janvier qui est le mois de référence à 31 jours 400 - (365+31) = 4 jours et non 5 jours comme dans ton exemple.
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions
dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des
tests pour moi?
'--------------------------------------------
Function Age_Jacky(Start As Range)
Dim Jour As Integer, Mois As Integer, An As Integer
Dim X As Date, Z As String, Y As String, Rg As Range
Dim C As Range, Nb As Long
If IsDate(Start) Then
Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1)
An = Year(X) - 1900
Mois = Month(X) - 1
Jour = Day(X) - 1
If Jour > 1 Then
Y = " jours "
Else
Y = " jour "
End If
If An > 1 Then
Z = " ans "
Else
Z = " an "
End If
If Not IsError(DateSerial(Year(Start), 2, 29)) Then
If Mois > 2 Then Jour = Jour + 1
End If
Age_Jacky = An & Z & Mois & " mois " & Jour & Y
Else
Age_Jacky = "Format date non reconnue"
End If
End Function
'--------------------------------------------
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
'--------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start)) X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 2
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y End If End Function '---------------------------------------------
MichD --------------------------------------------------------------- "MichD" a écrit dans le message de groupe de discussion : l6dllb$dqe$
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
'---------------------------------------------
Function Age_Jacky(Start As Range)
Dim Jour As Integer, Mois As Integer, An As Integer
Dim X As Date, Z As String, Y As String, Rg As Range
Dim C As Range, Nb As Long
If IsDate(Start) Then
Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1)
An = Year(X) - 1900
Mois = Month(X) - 1
Jour = Day(X) - 2
If Jour > 1 Then
Y = " jours "
Else
Y = " jour "
End If
If An > 1 Then
Z = " ans "
Else
Z = " an "
End If
Age_Jacky = An & Z & Mois & " mois " & Jour & Y
End If
End Function
'---------------------------------------------
MichD
---------------------------------------------------------------
"MichD" a écrit dans le message de groupe de discussion :
l6dllb$dqe$1@speranza.aioe.org...
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions
dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des
tests pour moi?
'--------------------------------------------
Function Age_Jacky(Start As Range)
Dim Jour As Integer, Mois As Integer, An As Integer
Dim X As Date, Z As String, Y As String, Rg As Range
Dim C As Range, Nb As Long
If IsDate(Start) Then
Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1)
An = Year(X) - 1900
Mois = Month(X) - 1
Jour = Day(X) - 1
If Jour > 1 Then
Y = " jours "
Else
Y = " jour "
End If
If An > 1 Then
Z = " ans "
Else
Z = " an "
End If
If Not IsError(DateSerial(Year(Start), 2, 29)) Then
If Mois > 2 Then Jour = Jour + 1
End If
Age_Jacky = An & Z & Mois & " mois " & Jour & Y
Else
Age_Jacky = "Format date non reconnue"
End If
End Function
'--------------------------------------------
'--------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start)) X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 2
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y End If End Function '---------------------------------------------
MichD --------------------------------------------------------------- "MichD" a écrit dans le message de groupe de discussion : l6dllb$dqe$
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Cela semble résoudre le bogue des dates de "Laurent B" soit "19/10/1983" et "01/01/2024" pour xl 2007 Mais des affichages "bizarres" apparaissent par exemple sur 20/10/1983 ==>30 ans 1 mois -1 jour 20/11/1983 ==>30 ans 0 mois -1 jour 21/12/1983 ==>29 ans 11 mois -1 jour
J'ai fait un copier / coller ==>valeurs sur la colonne C pour figer les dates http://cjoint.com/?CKtcFcErPaW -- Bonne nuit JJ
"MichD" a écrit dans le message de news: l6dllb$dqe$
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Cela semble résoudre le bogue des dates de "Laurent B" soit "19/10/1983" et "01/01/2024" pour xl 2007
Mais des affichages "bizarres" apparaissent par exemple sur
20/10/1983 ==>30 ans 1 mois -1 jour
20/11/1983 ==>30 ans 0 mois -1 jour
21/12/1983 ==>29 ans 11 mois -1 jour
J'ai fait un copier / coller ==>valeurs sur la colonne C pour figer les dates
http://cjoint.com/?CKtcFcErPaW
--
Bonne nuit
JJ
"MichD" <michdenis@hotmail.com> a écrit dans le message de news: l6dllb$dqe$1@speranza.aioe.org...
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions
dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des
tests pour moi?
'--------------------------------------------
Function Age_Jacky(Start As Range)
Dim Jour As Integer, Mois As Integer, An As Integer
Dim X As Date, Z As String, Y As String, Rg As Range
Dim C As Range, Nb As Long
If IsDate(Start) Then
Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1)
An = Year(X) - 1900
Mois = Month(X) - 1
Jour = Day(X) - 1
If Jour > 1 Then
Y = " jours "
Else
Y = " jour "
End If
If An > 1 Then
Z = " ans "
Else
Z = " an "
End If
If Not IsError(DateSerial(Year(Start), 2, 29)) Then
If Mois > 2 Then Jour = Jour + 1
End If
Age_Jacky = An & Z & Mois & " mois " & Jour & Y
Else
Age_Jacky = "Format date non reconnue"
End If
End Function
'--------------------------------------------
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Cela semble résoudre le bogue des dates de "Laurent B" soit "19/10/1983" et "01/01/2024" pour xl 2007 Mais des affichages "bizarres" apparaissent par exemple sur 20/10/1983 ==>30 ans 1 mois -1 jour 20/11/1983 ==>30 ans 0 mois -1 jour 21/12/1983 ==>29 ans 11 mois -1 jour
J'ai fait un copier / coller ==>valeurs sur la colonne C pour figer les dates http://cjoint.com/?CKtcFcErPaW -- Bonne nuit JJ
"MichD" a écrit dans le message de news: l6dllb$dqe$
Pour Jacky,
Une petite fonction personnalisée pour calculer ton âge...
Est-ce qu'elle souffre du même bogue que les autres fonctions dédiées à cette tâche?
Je n'ai pas vraiment le temps de tester à fond...tu veux faire des tests pour moi?
'-------------------------------------------- Function Age_Jacky(Start As Range) Dim Jour As Integer, Mois As Integer, An As Integer Dim X As Date, Z As String, Y As String, Rg As Range Dim C As Range, Nb As Long
If IsDate(Start) Then Nb = CLng(CLng(Date) - CLng(Start))
X = CDate(Nb) + DateSerial(1900, 1, 1) An = Year(X) - 1900 Mois = Month(X) - 1 Jour = Day(X) - 1
If Jour > 1 Then Y = " jours " Else Y = " jour " End If
If An > 1 Then Z = " ans " Else Z = " an " End If If Not IsError(DateSerial(Year(Start), 2, 29)) Then If Mois > 2 Then Jour = Jour + 1 End If Age_Jacky = An & Z & Mois & " mois " & Jour & Y Else Age_Jacky = "Format date non reconnue" End If End Function '--------------------------------------------
Est-ce qu'il y a des cas où l'âge est inexact? ;-))
Date de naissance==>01/01/2013 La fonction retourne 0 an 10 mois 17 jours
De janvier à novembre , il y a 10 mois complet totalisant 304 Jours Du 01/01/2013 au 19/11/2013 il y a 322 jours Donc NbJour22-304 jours
Sauf erreur (Là, je ne prends pas beaucoup de risque) Le résultat devrait être ==> 0 an 10 mois 18 jours ou si l'on compte la dernière borne(19/11) ==> 0 an 10 mois 19 jours
-- Salutations JJ
"MichD" a écrit dans le message de news: l6enk7$jr$
Oui, j'ai moi-même constaté cela après quelques tests après avoir publié ce message!
Regarde ce fichier http://cjoint.com/?CKte1cqydhJ
Est-ce qu'il y a des cas où l'âge est inexact? ;-))
Est-ce qu'il y a des cas où l'âge est inexact? ;-))
Date de naissance==>01/01/2013
La fonction retourne 0 an 10 mois 17 jours
De janvier à novembre , il y a 10 mois complet totalisant 304 Jours
Du 01/01/2013 au 19/11/2013 il y a 322 jours
Donc NbJour22-304 jours
Sauf erreur (Là, je ne prends pas beaucoup de risque)
Le résultat devrait être
==> 0 an 10 mois 18 jours
ou si l'on compte la dernière borne(19/11)
==> 0 an 10 mois 19 jours
--
Salutations
JJ
"MichD" <michdenis@hotmail.com> a écrit dans le message de news: l6enk7$jr$1@speranza.aioe.org...
Oui, j'ai moi-même constaté cela après quelques tests
après avoir publié ce message!
Regarde ce fichier http://cjoint.com/?CKte1cqydhJ
Est-ce qu'il y a des cas où l'âge est inexact? ;-))
Est-ce qu'il y a des cas où l'âge est inexact? ;-))
Date de naissance==>01/01/2013 La fonction retourne 0 an 10 mois 17 jours
De janvier à novembre , il y a 10 mois complet totalisant 304 Jours Du 01/01/2013 au 19/11/2013 il y a 322 jours Donc NbJour22-304 jours
Sauf erreur (Là, je ne prends pas beaucoup de risque) Le résultat devrait être ==> 0 an 10 mois 18 jours ou si l'on compte la dernière borne(19/11) ==> 0 an 10 mois 19 jours
-- Salutations JJ
"MichD" a écrit dans le message de news: l6enk7$jr$
Oui, j'ai moi-même constaté cela après quelques tests après avoir publié ce message!
Regarde ce fichier http://cjoint.com/?CKte1cqydhJ
Est-ce qu'il y a des cas où l'âge est inexact? ;-))