Excel et les dates

Résolu
Bonjour,

J'aimerai faire quelque chose mais cela me parait impossible...

Je voudrai qu'excel me dise, VALIDE, PERIME et A actualisé...

Tout cela par rapport à une date..
Par exemple, si la date est inférieur à aujourdhui = VALIDE
La date est entre aujourd'hui - 365 et aujourd'hui = A actualisé
La date est superieur à aujourd'hui = PERIME

J'arrive a avoir VALIDE et PERIME.. Mais je séche pour avoir cette troisième solution qui est a actualisé.. Que faire??

Ma formule est en SI.. Mais avec si je n'ai que deux réponse possible.. Par exemple VALIDE PERIME..

RAJOUT :
J'ai réussi mais je vais encore vous embetez !!

Voici ma formule!!

=SI(I3<B1;"PERIME";SI(I3>B1+365;"VALIDE";SI(I3<B1+364;"OK";)))

Sachant que B1 remplace aujourdhui ;)

Mais... Des fois je n'ai pas de date.. Et je me retrouve donc avec perime.. Alors qu'il n'y a rien a calculé..

Puis je rajouter quelque chose pour qu'il ne calcule pas les cellules vides?

Pouvez vous m'aidez??
Merci beaucoup !!

Dernière modification.. Voilà le résultat de tout!! Merci à vous tous, vous êtes géniaux.. Donc pour ceux et celles ;) en difficulté voilà la réponse à mon problème :

Sachant que B1 est la date d'aujourd'hui (Insertion, fonction, date) :

=SI(H3=0;"";SI(I3<$B$1;"PERIME";SI(I3>$B$1+365;"VALIDE";SI(I3<$B$1+365;"A Validé";))))

Encore merci !!

6 réponses

  1. Re,

    une cellule vide est considéré par Excel comme la première date du système soit 01/01/1900

    il suffit d'ajouter une conditionnelle en tête

    =SI(A1<>"";SI(A1<AUJOURDHUI();"PERIME (C) ";SI(A1>AUJOURDHUI()+365;"VALIDE (A) ";"A VALIDE (B)"));"")
    0
    1. J'ai réussi mais je vais encore vous embetez !!

      Voici ma formule!!

      =SI(I3<B1;"PERIME";SI(I3>B1+365;"VALIDE";SI(I3<B1+364;"OK";)))

      Sachant que B1 remplace aujourdhui ;)

      Mais... Des fois je n'ai pas de date.. Et je me retrouve donc avec perime.. Alors qu'il n'y a rien a calculé..

      Puis je rajouter quelque chose pour qu'il ne calcule pas les cellules vides?
      0
      1. Alors 'est une imbrication de plus à faire en 'début' :
        =SI(I3=0;"";SI(I3<I1;"PERIME";SI(I3>I1+365;"VALIDE";SI(I3<I1+364;"OK";))))
        0
      2. MERCI !!!! Vous êtes géniaux !!!

        Je sais pas comment vous remerciez.. Bon allez regardez par la fenêtre si vous voyez un homme tout nu debout sur son burreau, en criant merci, c'est moi!!
        0
      3. plutôt que tenter sa chance au buzz de la semaine, merci de mettre le sujet en résolu...
        0
      4. Re,

        Seb n'est pas membre et ne peut mettre son statut en résolu, si ses attentes sont satisfaites qu'il le dise clairement et je mettrais le statut qu'il convient

        A+
        Mike-31
        0
      5. Mike oui c'est résolu !! dobo.. un peu d'humour ne fait pas de mal.. Mais bon..

        Encore merci en tout cas et je vais devenir membre ;)
        0
    2. Re,

      Si tu changes tes données il sera difficile d'écrire une formule

      regardes cette dernière

      =SI(A1>AUJOURDHUI()+365;"Valide (A)";SI(A1>=AUJOURDHUI();"A Valide (B)";SI(A1<AUJOURDHUI();"Périmé (C)";"")))

      ou plus court
      =SI(A1<AUJOURDHUI();"PERIME (C) ";SI(A1>AUJOURDHUI()+365;"VALIDE (A) ";"A VALIDE (B)"))

      A+
      Mike-31

      Une période d'échec est un moment rêvé pour semer les graines du savoir.
      0
      1. Salut,

        Je pense qu'il y a erreur dans tes données
        Par exemple, si la date est inférieur à aujourdhui = VALIDE
        La date est entre aujourd'hui - 365 et aujourd'hui = A actualisé
        dans les deux cas tu es inférieur à aujourd'hui

        Je pense que tu voulais dire = à aujourd'hui
        inférieur à aujourd'hui jusqu'a moins 365
        et supérieur à aujourd'hui

        Si ta date est en A1 par exemple

        =SI(A1>AUJOURDHUI();"Périmé";SI(A1=AUJOURDHUI();"Valide";SI(A1>AUJOURDHUI()-365;"A actualiser";"")))
        0
        1. Bonjour,

          il y a déjà un pb dans tes 2 premières conditions :
          Si la date est < aujourd'hui et > aujourdhui-365, est elle VALIDE ou A ?
          Si tu écris (SI(date<Aujourdhui();"VALIDE";Si(et(date<aujourdhui();date>(aujourdhui()-365);"A";))
          alors tu n'auras effectivement jamais "A" puisque la 1° condition est vérifiée..
          Il faut donc que tu revois le test logique dont tu as besoin.
          0
          1. OK ...

            Je comprends...

            Ma première condition c'est : est superieur a aujourdhui + 365 = VALIDE (A)
            Ma deuxieme condition : Entre aujourd'hui et aujourdhui+365 = A VALIDE (B)
            Ma troisieme condition : est inférieur à aujourd'hui = PERIME (C)

            C'est faisable?
            0
          2. =SI(A1<AUJOURDHUI();"Périmé";SI(A1>AUJOURDHUI()+365;"VALIDE";"A VALIDER"))

            les détails des 'bornes' entre les dates sont à traiter en mettant <= ou >= suivant ce qu'on veut. par exemple à quel critère correspond la date d'aujourd'hui ? et la date aujourd'hui + 365 ?
            Dans la configuration ci-dessus, aujourd'hui est "A VALIDER"
            0
          3. merci !! c'est bon grave à toi.. Par contre il calacul même lorsque il n'y a rien a calculé.. Que faire??
            J'ai PERIME pour les personnes qui n'ont pas de dates...
            0
        2. Modérateur
          Salut,
          Pas tout compris... 2 conditions sont identiques : "inférieure à aujourdhui" et "compris entre aujourdhui-365 et aujourdhui"...
          Que voulez vous faire?
          0