Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

comment afficher en "année mois jour" le temps passé entre deux da

4 réponses
Avatar
Débutante
Bonjour et bonne année

Je cherche à afficher le temps passé entre deux dates au format "an mois jour"
J'ai utilisé le format personnalisé suivant :
aa "an(s)" mm "mois" jj "jour(s)"
mais il me donne un mois de trop.

Un essai avec :
1 donne : 00 an(s) 01 mois 01 jour(s)
30 donne : 00 an(s) 01 mois 30 jour(s)
31 donne : 00 an(s) 01 mois 31 jour(s)
32 donne : 00 an(s) 02 mois 01 jour(s)

alors que je voudrais :
avec 1 donnerait : 00 an(s) 00 mois 01 jour(s)
avec 30 donnerait : 00 an(s) 00 mois 30 jour(s)
avec 31 donnetait : 00 an(s) 00 mois 31 jour(s) ou : 00 an(s) 01 mois 00
jour(s)
avec 32 donnerait : 00 an(s) 01 mois 01 jour(s)

Qui aurait une soluce, est-ce un bug, ai-je mal compris ??

4 réponses

Avatar
Modeste
Bonsour® Débutante avec ferveur ;o))) vous nous disiez :

Je cherche à afficher le temps passé entre deux dates au format "an mois
jour"
Qui aurait une soluce, est-ce un bug, ai-je mal compris ??


;o)))
mal compris ....
en format date : le mois 0 ainsi que le jour 0 n'existent pas !!!!

explications concernant la fonction non documentée : DATEDIF
voir sur le site de Laurent Longre
:http://xcell05.free.fr/pages/form/dateheure.htm#DATEDIF
une solution (ChrisV) tenant compte des 0 et pluriels éventuels :
dEnt représente ici la date Antérieure
=SI(ET(DATEDIF(dEnt;AUJOURDHUI();"y")=0;DATEDIF
(dEnt;AUJOURDHUI();"ym")=0;DATEDIF(dEnt;AUJOURDHUI();
"md")=0);0&" jour";SI(DATEDIF(dEnt;AUJOURDHUI();"y")<>0;
DATEDIF(dEnt;AUJOURDHUI();"y")&SI(DATEDIF(dEnt;
AUJOURDHUI();"y")>1;" ans ";" an ");"")&SI(DATEDIF(dEnt;
AUJOURDHUI();"ym")<>0;DATEDIF(dEnt;AUJOURDHUI();"ym")
&" mois ";"")&SI(DATEDIF(dEnt;AUJOURDHUI();"md")<>0;
DATEDIF(dEnt;AUJOURDHUI();"md")&SI(DATEDIF(dEnt;
AUJOURDHUI();"md")>1;" jours";" jour");""))


--
;o)))
@+

Les news à la source !!!
news://news.microsoft.com/microsoft.public.fr.excel
et répondez OUI

n'oubliez pas les FAQ :http://www.excelabo.net
http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr

Avatar
Débutante
Je te remercie pour ta "modeste" contribution, sachant qu'elle devrait
convenir tout à fait.
DATEDIF, if suffisait de savoir son existance sous excel, alors qu'elle
existe dans bien des langages.
Tout simplement je faisais date2 - date1 et j'obtenais un nombre de jours
éccoulés.
Ma difficulté fût de formater ce résultat en "années mois jours".
J'allais me résigner à créer ma propre fonction me retournant une chaine de
caractères à partir de date2 et date1 en paramêtre.

J'ai parcouru en diagonale le site de Laurent Longre
http://xcell05.free.fr/pages/form/dateheure.htm#DATEDIF
Qui semble bien documenté, un GRAND merci à lui pour le partage de son
savoir, ainsi qu'à toi MODESTE pour l'avoir fait connaître.



Bonsour® Débutante avec ferveur ;o))) vous nous disiez :

Je cherche à afficher le temps passé entre deux dates au format "an mois
jour"
Qui aurait une soluce, est-ce un bug, ai-je mal compris ??


;o)))
mal compris ....
en format date : le mois 0 ainsi que le jour 0 n'existent pas !!!!

explications concernant la fonction non documentée : DATEDIF
voir sur le site de Laurent Longre
:http://xcell05.free.fr/pages/form/dateheure.htm#DATEDIF
une solution (ChrisV) tenant compte des 0 et pluriels éventuels :
dEnt représente ici la date Antérieure
=SI(ET(DATEDIF(dEnt;AUJOURDHUI();"y")=0;DATEDIF
(dEnt;AUJOURDHUI();"ym")=0;DATEDIF(dEnt;AUJOURDHUI();
"md")=0);0&" jour";SI(DATEDIF(dEnt;AUJOURDHUI();"y")<>0;
DATEDIF(dEnt;AUJOURDHUI();"y")&SI(DATEDIF(dEnt;
AUJOURDHUI();"y")>1;" ans ";" an ");"")&SI(DATEDIF(dEnt;
AUJOURDHUI();"ym")<>0;DATEDIF(dEnt;AUJOURDHUI();"ym")
&" mois ";"")&SI(DATEDIF(dEnt;AUJOURDHUI();"md")<>0;
DATEDIF(dEnt;AUJOURDHUI();"md")&SI(DATEDIF(dEnt;
AUJOURDHUI();"md")>1;" jours";" jour");""))


--
;o)))
@+

Les news à la source !!!
news://news.microsoft.com/microsoft.public.fr.excel
et répondez OUI

n'oubliez pas les FAQ :http://www.excelabo.net
http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr







Avatar
JièL Goubert
Bonjoir© Débutante

Le 04/01/2006 13:39 vous avez écrit... :
Je te remercie pour ta "modeste" contribution, sachant qu'elle devrait
convenir tout à fait.

Qui semble bien documenté, un GRAND merci à lui pour le partage de son
savoir, ainsi qu'à toi MODESTE pour l'avoir fait connaître.


'ttention, y va devenir tout rouge... et après on va le confondre avec
un Ferrari... ;-)))

--
JièL / Jean-Louis GOUBERT
La FAQ Outlook est la : http://faq.outlook.free.fr

Avatar
Clément Marcotte
:-))))))))))))))))))))))

"JièL Goubert" a écrit dans le
message de news:
Bonjoir© Débutante

Le 04/01/2006 13:39 vous avez écrit... :
Je te remercie pour ta "modeste" contribution, sachant qu'elle devrait
convenir tout à fait.

Qui semble bien documenté, un GRAND merci à lui pour le partage de son
savoir, ainsi qu'à toi MODESTE pour l'avoir fait connaître.


'ttention, y va devenir tout rouge... et après on va le confondre avec un
Ferrari... ;-)))

--
JièL / Jean-Louis GOUBERT
La FAQ Outlook est la : http://faq.outlook.free.fr