Excel formule imbriquée si

Résolu
Bonjour,

Je voudrais une formule qui dise :

si V est inférieur à 14 alors V& "jours"
si V est compris entre 14 et 130 alors "deux semaines"
si V est supérieur à 130 alors "un mois"

J'ai créé la formule : si(14>14;V& "jours";si(14>V>130;"deux semaines;"un mois")) mais cette formule ne fonctionne pas

Merci de l'aide que vous pourrez m'apporter

6 réponses

  1. Bonjour

    Un exemple de ton fichier serait le bienvenu
    Pour transmettre un fichier, il faut passer par un site de pièce jointe tel que cjoint.com

    Va sur ce site : https://www.cjoint.com/
    Clic sur parcourir,
    Cherche ton fichier,
    clic sur ouvrir,
    Clic sur "Créer le lien cjoint",
    Copier le lien,
    Revenir ici le coller dans une réponse..
    Cordialement
    0
    1. https://www.cjoint.com/doc/18_06/HFjp4DdBdQZ_Contrats-excel-Base-CDD.xls

      c'est la formule qui se trouve dans la colonne W

      Merci de votre aide
      0
      1. Bonsoir
        Tu as mis des restrictions sur ton fichier
        Essaie

        =SI(V2>130;"un mois";si(V2>=14;"deux semaines";V2&" jours"))

        Cordialement
        0
        1. cela ne fonctionne pas le résultat indique FAUX
          0
      2. Contributeur
        Bonjour
        Ce lien ne fonctionne pas mais,en attendant le fichier:
        sauf si vous avez une cellule nommée V votre formule ne peut pas fonctionner car il n'y a pas d'adresse de cellule (lettre colonne et N° de ligne) d'une part et d'autre part, vous écrivez SI(14>14 et ça ne doit pas arriver souvent en arithmétique!!

        alors mieux vaut écrire, si la valeur à considérer est par exemple en V1(adresse de cellule à adapter)

        =SI(V1="";"";SI(V1<14;V1&" jour(s)";SI(V1<130;"deux semaines";"un mois")))

        en respectant bien l'ordre des valeurs 14 et 130

        on peut même "fignoler" les accords

        =SI(V1="";"";SI(V1<14;V1&" jour"&SI(V1>1;"s";"");SI(V1<130;"deux semaines";"un mois")))
        crdlmnt

        0
        1. Ca fonctionne merci beaucoup
          pour mon info pourriez vous me dire pourquoi la formule que j'avais créée =si(V2>14;V2& "jours";si(14>V2>130;"deux semaines;"un mois")) ne fonctionne pas ?
          0
        2. Contributeur
          Votre formule ne fonctionne pas essentiellement parce que Excel s'arrête de lire la formule dès qu'il a trouvé une solution.
          et donc, Excel renvoie V2&"jour" dès qu'il trouve une valeur V2 > que 14 même si V2 fait 12345
          donc si vous voulez utiliser >, il faut commencer par la plus grande valeur limite
          crdlmnt
          0
      3. Contributeur
        J'ai créé la formule : si(14>14;V& "jours";si(14>V>130;"deux semaines;"un mois")) mais cette formule ne fonctionne pas
        Il était absolument impossible qu'elle fonctionne !

        Tes signes < et > sont inversés !
        En effet V3 ne peut pas être à la fois plus petit que 14 et plus grand que 130, n'est-ce pas ?

        La logique de ta formule est trop fantaisiste ...
        Et où as-tu vu qu'on pouvait écrire
        SI(x<N<y; ... 
        ?

        Et si la condition 1 n'est pas remplie V3 ne sera pas affichée devant "2 semaines" ou "1 mois" !

        Il faut correctement décomposer chaque test en écrivant
        SI(ET(x<N;N<y); ... 
        ou
        SI(ET(x<N;y>N); ... 
        et ta formule
        si(14>14;V& "jours";si(14>V>130;"deux semaines;"un mois"))
        deviendra finalement
        =V3&SI(V3<14;" jours";SI(ET(V3>14;V3<130);" deux semaines";" un mois"))

        Ce n'est plus du tout pareil !
        0
        1. Merci beaucoup pour les explications
          0
        2. Contributeur
          Il faut oublier mon message #5 du 9 juin à 19:23 et le remplacer par
          :

          J'ai créé la formule : si(14>14;V& "jours";si(14>V>130;"deux semaines;"un mois")) mais cette formule ne fonctionne pas
          Il était absolument impossible qu'elle fonctionne !

          Tes signes < et > sont inversés !
          En effet V3 ne peut pas être à la fois plus petit que 14 et plus grand que 130, n'est-ce pas ?

          La logique de ta formule est trop fantaisiste ...
          Et où as-tu vu qu'on pouvait écrire
          SI(x<N<y; ... 
          ?

          Il faut correctement décomposer chaque test en écrivant
          SI(ET(x<N;N<y); ...
          ou
          SI(ET(x<N;y>N); ...
          et ta formule
          si(14>14;V& "jours";si(14>V>130;"deux semaines;"un mois"))
          deviendra finalement
          =SI(V3<14;V3&" jours";SI(ET(V3>14;V3<130);"deux semaines";"un mois"))

          Ce n'est plus du tout pareil !
          0
      4. Bonjour fily

        En réponse à ton commentaire #6 la capture ci-dessous prouve que ma formule est bonne.



        Merci Vaucluse j'ai chipé ton bout de formule sur l'accord du pluriel.

        Cordialement
        0
        1. Contributeur
          Pas de quoi, Papyluc, c'est gratuit pour les amis
          Bien cordialement
          0