comment afficher en "année mois jour" le temps passé entre deux da
4 réponses
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 ??
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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
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
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
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
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