Excel formule imbriquée si

Résolu/Fermé
fily - 9 juin 2018 à 17:45
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 10 juin 2018 à 15:08
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

jc80 Messages postés 4242 Date d'inscription mardi 5 février 2013 Statut Membre Dernière intervention 25 février 2019 1 424
9 juin 2018 à 17:51
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
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
PapyLuc51 Messages postés 4394 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 13 novembre 2024 1 445
Modifié le 9 juin 2018 à 19:15
Bonsoir
Tu as mis des restrictions sur ton fichier
Essaie

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

Cordialement
0
cela ne fonctionne pas le résultat indique FAUX
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
Modifié le 9 juin 2018 à 19:03
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
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
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
9 juin 2018 à 20:01
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raymond PENTIER Messages postés 58720 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 10 novembre 2024 17 234
9 juin 2018 à 19:23
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
Merci beaucoup pour les explications
0
Raymond PENTIER Messages postés 58720 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 10 novembre 2024 17 234
10 juin 2018 à 14:16
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
PapyLuc51 Messages postés 4394 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 13 novembre 2024 1 445
10 juin 2018 à 10:46
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
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
10 juin 2018 à 15:08
Pas de quoi, Papyluc, c'est gratuit pour les amis
Bien cordialement
0