Intervalle de date en année mois jour

Résolu/Fermé
Pir27 Messages postés 14 Date d'inscription samedi 13 avril 2013 Statut Membre Dernière intervention 9 mars 2015 - 8 mars 2015 à 18:09
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 9 mars 2015 à 12:32
Bonjour,

J'utilise la fonction datedif pour calculer mon intervalle de dates :

=DATEDIF(B2;B3;"Y")&SI(DATEDIF(B2;B3;"Y")>1;" ans, ";" an, ")&DATEDIF(B2;B3;"YM") &" mois et "&DATEDIF(B2;B3;"MD")&SI(DATEDIF(B2;B3;"MD")>1;" jours";" jour")

ou B2 est la date de début et B3 la date de fin.
J'obtiens "0 ans, 0 mois et 2 jours".

Je souhaite n'afficher que la partie du résultat qui n'est pas nulle (ici "2 jours").

Merci infiniment de vos réponses.


3 réponses

Bonjour

a priori quelque chose comme ça

=SI(DATEDIF(B2;B3;"Y")>1;DATEDIF(B2;B3;"Y") & " ans, ";"") & SI(DATEDIF(B2;B3;"YM")>1;DATEDIF(B2;B3;"YM")&" mois ";"") & DATEDIF(B2;B3;"md") & " jours"

https://forums.commentcamarche.net/forum/affich-37636597-difference-entre-dates-avec-la-fonction-datedif
0
Pir27 Messages postés 14 Date d'inscription samedi 13 avril 2013 Statut Membre Dernière intervention 9 mars 2015
9 mars 2015 à 06:47
C'est parfait, merci 1000 fois.
Je marque comme résolu.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
9 mars 2015 à 06:39
Bonjour
A tester
=SI(DATEDIF(B2;B3;"Y")=0;"";SI(DATEDIF(B2;B3;"Y")=1;"1 an, ";DATEDIF(B2;B3;"Y")&" ans, ")&SI(DATEDIF(B2;B3;"YM")=0;"";SI(DATEDIF(B2;B3;"YM")=1;"1 mois";DATEDIF(B2;B3;"YM")&" mois ")&SI(DATEDIF(B2;B3;"md")=0;"";SI(DATEDIF(B2;B3;"md")=1;" et 1 jour";"et "&DATEDIF(B2;B3;"md")&" jours"))))
Cdlt
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
Modifié par pijaku le 9/03/2015 à 12:03
Bonjour tout le monde,

J'ai saisi en B2 : 01/01/2015, en B3 : 01/02/2015.
La formule initiale affiche : 0 an, 1 mois et 0 jour
La formule de Paf affiche : 0 jours
La formule de Frenchie83 n'affiche rien.

Il conviendrait, peut être, de modifier la formule de Frenchie, (place d'une parenthèse fermante), pour "s'approcher" d'un quelconque résultat :
=SI(DATEDIF(B2;B3;"Y")=0;"";SI(DATEDIF(B2;B3;"Y")=1;"1 an, ";DATEDIF(B2;B3;"Y")&" ans, "))&SI(DATEDIF(B2;B3;"YM")=0;"";SI(DATEDIF(B2;B3;"YM")=1;"1 mois";DATEDIF(B2;B3;"YM")&" mois ")&SI(DATEDIF(B2;B3;"md")=0;"";SI(DATEDIF(B2;B3;"md")=1;" et 1 jour";"et "&DATEDIF(B2;B3;"md")&" jours")))
A première vue, je dirais qu'il y manque les "et" de liaison entre mois et jour le cas échéant... (EDIT : mea culpa ils sont bien là...)
Mais...
Les paramètres étant nombreux, la formule est longue. Cela ne fait "qu'alourdir" le fichier en cas de répétition sur une colonne (par exemple). Donc, selon l'usage (si ce n'est qu'une formule par feuille, celle-ci fonctionnera impecc), je préconiserai (ou pas) une fonction personnalisée ou une macro...
🎼 Cordialement,
Franck 🎶
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
9 mars 2015 à 12:03
Bonjour tout le monde
Effectivement j'ai zappé la parenthèse fermante après le test sur l'année (faute d'inattention),
Autre petite correction, dans le cas ou il n'y a qu'un seul mois d'écart,il faut rajouter un espace après mois "SI(DATEDIF(B2;B3;"YM")=1;"1 mois "; " sinon ça donne ceci: "1 moiset 2 jours".
Concernant la formule de Paf, elle ne détecte pas un écart d'un seul mois
exemple: 01/02/2015 et 01/03/2015 donne 1 jours, de plus "jour et année" sont au pluriel, même si l'écart est égal à 1.
je dirais qu'il y manque les "et" de liaison entre mois et jour le cas échéant... . non, le "Et" est inclus juste avant le datedif:
";"et "&DATEDIF(B2;B3;"md")&" jours"))) " dans le cas ou il y a plusieurs jours, dans le cas d'un seul jour, il est intégré directement dans la réponse, mais ça vous l'aviez vu.
Bonne journée
cordialement
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744 > Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023
9 mars 2015 à 12:32
Salut Frenchie,
non, le "Et" est inclus juste avant le datedif:
Oui. Je ne l'ai pas vu au premier abord, mais j'ai édité ma réponse...
0