Résultat de 2 DATEDIF négatif

Résolu
Bonjour a tous,

bonjour de travail sur excel les DATEDIF
J'ai en colonne :
colonne F colonne G
01/05/2000 01/07/2009

colonne A colonne B
02/10/2005 02/02/2006

DATEDIF(F25;G25;"y")-DATEDIF(A26;B26;"y")&" ans "&DATEDIF(F25;G25;"ym")-DATEDIF(A26;B26;"ym")&" mois"

J'obtiend un resultat negatif de 9 ans -2 mois
Or le resultat devrait etre de 8 ans 10 mois

Comment enlever cette negatif ai-je mal poser ma formule ? Merci a vous de m'aider.



--

19 réponses

  1. Contributeur
    Bonjour
    il faudrait savoir ce que vous voulez obtenir exactement avec vos 4 cellules de départ, parce que dans votre formule vous mélangez les opérations (soustraction) et les textes et on a du mal à deviner où vous voulez en venir
    à vous lire(et probablement qu'Excel a du al aussi)
    C'est d'autant plus important de le savoir que le code DATEDIF a parfois, comme on a déjà pu en débattre sur ce forum, des réactions un peu bizarres.
    crdlmnt
    0
    1. En fait je veux calculer la date l'année et le mois de la colonne F et G

      colonne F colonne G
      01/05/2000 01/07/2009

      et soustraire au résultat obtenue la colonne A et B

      colonne A colonne B
      02/10/2005 02/02/2006

      ce qui devrait faire :
      DATEDIF(F25;G25;"y")-DATEDIF(A26;B26;"y")&" ans "&DATEDIF(F25;G25;"ym")-DATEDIF(A26;B26;"ym")&" mois"

      Merci a vous
      valerie
      0
      1. Bonjour,

        c'est plus compliqué, regarde comme cela

        =ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)&" ans "&(((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)-ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12))*12&" mois"
        0
        1. Merci MIKE pour ta rapidité la formule marche et je vais l'étudier pour comprendre

          Merci a toi
          Valerie
          --
          0
          1. Re,

            je vais t'aider, à la place de compter les années et mois j'ai calculé tout en mois
            (DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m")
            ensuite j'ai transformé le résultat en année en divisant par 12
            (DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m")/12
            pour isoler le nombre d'année complète j'ai extrait le nombre entier avec la syntaxe ENT il est possible d'utiliser également TRONQUE
            =ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)
            j'ai ajouté en fin de formule &" ans "

            reste qu'a isoler et transformer les décimales
            on reprends la formule initiale
            (((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)
            on isole les décimales que l'on converti en mois
            -ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12))*12
            on ajoute &" mois"
            ce qui donne

            =ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)&" ans "&(((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)-ENT((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12))*12&" mois"

            et avec TRONQUE cela donne
            = TRONQUE((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)&" ans "&(((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12)- TRONQUE((DATEDIF(F25;G25;"m")-DATEDIF(A26;B26;"m"))/12))*12&" mois"
            0
            1. Merci mike 31 de m'avoir aider mais j'ai toujours un résultat avec virgule
              10 ans 4,99999999999999 ms

              --
              0
              1. Rze,

                tu peux mettre ton fichier qui affiche ce résultat sur le forum à partir de ce lien
                1) Clic sur ce lien https://www.cjoint.com/
                2) Clic sur le bouton Parcourir pour sélectionner ton fichier
                3) Clic sur le bouton Créer le lien Cjoint en bas de la page
                4) Au bout de quelques secondes en haut de la page en bleu souligné un lien sera généré, tu le sélectionnes et tu le copies dans une réponse
                0
                1. Re,

                  je ne vois pas quelle cellule pose problème,
                  0
                  1. cellule c19 resultat avec vigule et je le voudrais sans Merci pour ton aide

                    --
                    0
                    1. Re,

                      Ah ok je vois, je te contrôle ça dans la soirée
                      0
                      1. Re,

                        tu peux calculer manuellement ce que je devrais avoir en C19 et me donner le résultat voir si je suis juste
                        0
                        1. tu devrais avoir 10 ans 4 mois et 10 jrs a quelque chose pres

                          --
                          0
                          1. 10 ans 6 mois - 1 mois 20 jrs ce qui donne 10 ans 4 mois et 10 jrs

                            --
                            0
                            1. Re,

                              effectivement il manquait un ENT, formule sans les jours
                              =ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)&" ans "&ENT((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12))*12)&" mois"


                              avec les jours, mais j'en trouve 11
                              =ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)&" ans "&ENT((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12))*12)&" mois "&ENT(((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12))*12-ENT((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12))*12))*12)&" jours" 
                              0
                              1. merci a toi cela devrait être bon
                                Tu m'a beaucoup appris sur le date dif et les ent() merci a toi pour ce perfectionnement
                                A +
                                vaou

                                --
                                0
                                1. salut mike-31

                                  j'ai rajouté une date a mon calcul peut tu me dire si il est bien posé. Je pense que non car je trouve 10 ans 115 ms 0 jrs or je devrais trouvé
                                  10 ans 4 ms 6 jrs. Peux-tu me dire si c'est une parenthèse mal posé. Merci

                                  =ENT((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)&" a " &ENT((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A13;B13;"m"))/12) -ENT((DATEDIF(F11;G11;"m")-DATEDIF(A14;B14;"m"))/12))*12)&" ms " &ENT(((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A13;B13;"m"))/12) -ENT((DATEDIF(F11;G11;"m")-DATEDIF(A14;B14;"m"))/12))*12 -ENT((((DATEDIF(F11;G11;"m")-DATEDIF(A12;B12;"m"))/12)-ENT((DATEDIF(F11;G11;"m")-DATEDIF(A13;B13;"m"))/12) -ENT((DATEDIF(F11;G11;"m")-DATEDIF(A14;B14;"m"))/12))*12))*12) &" jrs"

                                  https://www.cjoint.com/c/FDCsqOiGhUI

                                  Merci a toi de m'aider.
                                  valou
                                  0
                                  1. voici le resultat final

                                    =DATEDIF(DATE(ANNEE(F11);MOIS(F11);JOUR(F11));G11;"y")&" ans " &DATEDIF(DATE(ANNEE(F11);MOIS(F11)+1;JOUR(F11)+25);G11;"ym")&" ms " &DATEDIF(DATE(ANNEE(F11);MOIS(F11)+1;JOUR(F11)+25);G11;"md")&" jrs "

                                    ou bien

                                    =DATEDIF(DATE(ANNEE(F11);MOIS(F11)+DATEDIF(A12;B12;"ym")+DATEDIF(A13;B13;"ym")+DATEDIF(A14;B14;"ym")+DATEDIF(A15;B15;"ym")+DATEDIF(A16;B16;"ym");JOUR(F11)+DATEDIF(A12;B12;"md")+DATEDIF(A13;B13;"md")+DATEDIF(A14;B14;"md")+DATEDIF(A15;B15;"md")+DATEDIF(A16;B16;"md"));G11;"y")&" ans "&DATEDIF(DATE(ANNEE(F11);MOIS(F11)+DATEDIF(A12;B12;"ym")+DATEDIF(A13;B13;"ym")+DATEDIF(A14;B14;"ym")+DATEDIF(A15;B15;"ym")+DATEDIF(A16;B16;"ym"); JOUR(F11)+DATEDIF(A12;B12;"md")+DATEDIF(A13;B13;"md")+DATEDIF(A14;B14;"md")+DATEDIF(A15;B15;"md")+DATEDIF(A16;B16;"md"));G11;"ym")&" ms " &DATEDIF(DATE(ANNEE(F11);MOIS(F11)+DATEDIF(A12;B12;"ym")+DATEDIF(A13;B13;"ym")+DATEDIF(A14;B14;"ym")+DATEDIF(A15;B15;"ym")+DATEDIF(A16;B16;"ym");JOUR(F11)+DATEDIF(A12;B12;"md")+DATEDIF(A13;B13;"md")+DATEDIF(A14;B14;"md")+DATEDIF(A15;B15;"md")+DATEDIF(A16;B16;"md"));G11;"md")&" jrs"

                                    --
                                    0