Bonjour le forum
Je suis à la recherche d'une formule dans une requête ou d'un code en vba qui me permettrait de calculer le nombre d'années, de mois et de jours entre deux dates d'une table.
Je connais bien la fonction Diffdate, mais je la trouve lourde ou alors je l'utilise mal . Je m'explique : si jour1 de la Date1 et > à jour2 de la Date2 alors 1er calcul : ou si jour1 = Jour2 2ème calcul ou si jour1 < jour2 / 3ème calcul / si Mois1 > Mois2 4ème calcul ou Mois1 = Mois2 5ème calcul ou mois1 < mois 2 / 6ème calcul la formule s’alourdit énormément.
en matière de code j'ai trouvé ceci qui ne calcule que les années. Comme je suis nul en VBA je n'ai pas pu ou pas su le modifier pour qu'il calcul également les mois et les jours.
Function CalculAge(ByVal Dat1 As Date, ByVal Dat2 As Date) As Integer
If Month(Dat2) > Month(Dat1) Then
CalculAge = DateDiff("yyyy", Dat1, Dat2)
ElseIf Month(Dat2) = Month(Dat1) Then
If Day(Dat2) >= Day(Dat1) Then
CalculAge = DateDiff("yyyy", Dat1, Dat2)
Else
CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
End If
Else
CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
End If
End Function
Je voudrais utiliser soit la formule soit le code dans une requête.
Je ne suis pas arrivé à trouver mon bonheur alors si quelqu'un à un lien me donnant la solution, je suis preneur et vous en remercie d'avance.
Cordialement à toute l'équipe et particulièrement à Modeste
Je suis à la recherche d'une formule dans une requête ou d'un code en vba qui me permettrait de calculer le nombre d'années, de mois et de jours entre deux dates d'une table.
Je connais bien la fonction Diffdate, mais je la trouve lourde ou alors je l'utilise mal . Je m'explique : si jour1 de la Date1 et > à jour2 de la Date2 alors 1er calcul : ou si jour1 = Jour2 2ème calcul ou si jour1 < jour2 / 3ème calcul / si Mois1 > Mois2 4ème calcul ou Mois1 = Mois2 5ème calcul ou mois1 < mois 2 / 6ème calcul la formule s’alourdit énormément.
en matière de code j'ai trouvé ceci qui ne calcule que les années. Comme je suis nul en VBA je n'ai pas pu ou pas su le modifier pour qu'il calcul également les mois et les jours.
Function CalculAge(ByVal Dat1 As Date, ByVal Dat2 As Date) As Integer
If Month(Dat2) > Month(Dat1) Then
CalculAge = DateDiff("yyyy", Dat1, Dat2)
ElseIf Month(Dat2) = Month(Dat1) Then
If Day(Dat2) >= Day(Dat1) Then
CalculAge = DateDiff("yyyy", Dat1, Dat2)
Else
CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
End If
Else
CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
End If
End Function
Je voudrais utiliser soit la formule soit le code dans une requête.
Je ne suis pas arrivé à trouver mon bonheur alors si quelqu'un à un lien me donnant la solution, je suis preneur et vous en remercie d'avance.
Cordialement à toute l'équipe et particulièrement à Modeste