Cacul jours mois annee avec datedif

Résolu
Gil369 Messages postés 120 Statut Membre -  
Mike-31 Messages postés 19571 Statut Contributeur -
Bonjour,
je souhaiterai résoudre un souci de calcul de date :

j'ai en B3 : 01/01/2018
en C3 : 31/12/2018
en D3 : =DATEDIF(B3;C3;"y") & " a " & DATEDIF(B3;C3;"ym") & " m et " & DATEDIF(B3;C3;"md") & " j"
le résultat affiche : 0a 11m 30j
comment afficher 1a ?

Cordialement
Gil
A voir également:

4 réponses

Mike-31 Messages postés 19571 Statut Contributeur 5 136
 
Bonjour,

et oui c'est le principe des intervalles si on compte le premier jour et le dernier il faut soit ajouter +1 à une date ou -1 à l'autre

pour revenir à la demande ta formule modifiée avec l'aide de Patrice que je salue t'affichera des mois ou des jours à 0 dans ton exemple 1 a 0 m et 0 j

ce qui est dommage, une formule plus complexe permet d'afficher uniquement les années ou mois ou encore jours s'il y en a et prend en compte le pluriel des années et jours si c'est le cas
=SI(C3+1-B3;TEXTE(DATEDIF(B3;C3+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(B3;C3+1;"ym");"[>]0"" mois "";")&SI(C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))>1;C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))&" jours";SI(C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))=1;C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))&" jour";"")))

et pour traiter les cellules C3 et B3 vide tu peux ajouter une conditionnelle
=SI(ET(B3<>"";C3<>"");SI(C3+1-B3;TEXTE(DATEDIF(B3;C3+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(B3;C3+1;"ym");"[>]0"" mois "";")&SI(C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))>1;C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))&" jours";SI(C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))=1;C3+1-MOIS.DECALER(B3;DATEDIF(B3;C3+1;"m"))&" jour";""))))

1
Patrice33740 Messages postés 8930 Statut Membre 1 781
 
Bonjour Mike,
Bonjour Gil,

Plus simplement :
=SI(ET(B2>0;B2<C2);TEXTE(DATEDIF(B2;C2+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(B2;C2+1;"ym");"[>]0"" mois "";")&TEXTE(DATEDIF(B2;C2+1;"md");"[>1]0"" jours"";[>]""1 jour"";");"")


Cdlt
Patrice
0
Mike-31 Messages postés 19571 Statut Contributeur 5 136
 
Salut Patrice,

Je n'ai pas eu le temps d'aller plus loin ni tester ta formule que tu as certainement fait mais AH OUI pas besoin d'autant de conditionnelles effectivement.
J'espère que Gil369 repassera par la.
Merci à toi et bonne journée.
0
Patrice33740 Messages postés 8930 Statut Membre 1 781
 
Bonjour,

En ajoutant le jour qui manque !
I.e dans la formule, remplacer C3 par (C3+1)
0
Gil369 Messages postés 120 Statut Membre
 
re,
bon sang mais c'est bien sur !!!!
merci beaucoup
cordialement
Gil
0
Gil369 Messages postés 120 Statut Membre
 
Sujet résolu
Cordialement
Gil
0
Gil369 Messages postés 120 Statut Membre
 
Bonjour Mike-31
j'ai testé ta formule; c'est nickel !!!!

Merci a vous deux : Mike et Patrice

Cordialement

Gil

0