Calcul ancienneté : Année Mois Jours

Résolu
Haf09100 Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
brucine Messages postés 20679 Date d'inscription   Statut Membre Dernière intervention   - 6 févr. 2024 à 09:15

Bonjour à tous, 

Je recherche en vain une formule excel me permettant de calculer l'ancienneté en Année Mois Jours.

J'ai bien trouvé plusieurs fois la même formule sur internet mais j'ai des soucis lorsque par exemple : 

- du 01/01/2020 au 31/12/2023 -> au lieu de mettre 4 ans -> j'ai 3 ans 11 mois 31 jours

- du 01/01/2020 au 31/01/2024 -> au lieu de mettre 1 an et 1 mois -> j'ai 4 ans 0 mois 31 jours

J'avais le même soucis lorsque je faisais 01/01/2020 au 31/01/2020 -> mais en ajoutant +1 j'ai eu le bon résultat. Idem quand je faisais 01/01/2020 au 01/02/2020 j'avais un écart, mais le +1 m'a bien corrigé. 

Mais pour les deux écarts plus haut, je n'arrive pas à trouver la bonne formule. 

Ci-dessous la formule que j'ai testé : 

=SIERREUR(SI(OU(G7="";G8="");"";DATEDIF(G7;G8;"y")&" ans "&DATEDIF(G7;G8;"ym")&" mois 
"&SI((DATEDIF(G7;G8;"md")+1)>0;(DATEDIF(G7;G8;"md")+1)&" jours";""));0)

G7 = date de début

G8 = date de fin

Merci infiniment pour votre aide !

A voir également:

2 réponses

brucine Messages postés 20679 Date d'inscription   Statut Membre Dernière intervention   3 242
 

Bonjour,

Pour que l'intervalle soit calculé correctement, le +1 ne doit pas être à l'extérieur de DATEDIF mais ajouté à la date d'arrivée:
=DATEDIF(G7;G8+1;"y")&" ans "

=DATEDIF(G7;G8+1;"ym")&" mois"

=DATEDIF(G7;G8+1;"md")&" jours"

restant la décoration en n'affichant rien si une des valeurs est nulle et en enlevant le "s" si elle vaut 1.

1
Haf09100 Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour @brucine StatutMembre

Merci beaucoup ! Ca marche parfaitement !!!

Tout cumulé ça donne ça :

=SIERREUR(SI(OU(G7="";G8="");0;DATEDIF(G7;G8+1;"y")&" ans "&DATEDIF(G7;G8+1;"ym")&" mois "&DATEDIF(G7;G8+1;"md")&" jours");0)

Pour les "s" ça ne me pose pas trop de soucis :) 

Merciiiiii

0
brucine Messages postés 20679 Date d'inscription   Statut Membre Dernière intervention   3 242
 

Bonjour,

De rien.

Si tu veux malgré tout faire dans "la cosmétique", comme ça:

SI(DATEDIF(G7;G8+1;"y")=0;"";SI(DATEDIF(G7;G8+1;"y")=1; DATEDIF(G7;G8+1;"y")&" an";DATEDIF(G7;G8+1;"y")&" ans"))

idem pour les mois et les jours.

0