Menu

Excel formule imbriquée si [Résolu]

- - Dernière réponse : Vaucluse
Messages postés
23297
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
- 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
Afficher la suite 

Votre réponse

6 réponses

Messages postés
4261
Date d'inscription
mardi 5 février 2013
Dernière intervention
10 janvier 2019
1173
0
Merci
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 : http://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
Commenter la réponse de jc80
0
Merci
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
Commenter la réponse de fily
Messages postés
1794
Date d'inscription
dimanche 3 mai 2009
Dernière intervention
16 janvier 2019
411
0
Merci
Bonsoir
Tu as mis des restrictions sur ton fichier
Essaie

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

Cordialement
cela ne fonctionne pas le résultat indique FAUX
Commenter la réponse de PapyLuc51
Messages postés
23297
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
5547
0
Merci
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

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 ?
Vaucluse
Messages postés
23297
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
5547 -
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
Commenter la réponse de Vaucluse
Messages postés
47942
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
15466
0
Merci
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 !
Merci beaucoup pour les explications
Raymond PENTIER
Messages postés
47942
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
15466 -
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 !
Commenter la réponse de Raymond PENTIER
Messages postés
1794
Date d'inscription
dimanche 3 mai 2009
Dernière intervention
16 janvier 2019
411
0
Merci
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
Vaucluse
Messages postés
23297
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 janvier 2019
5547 -
Pas de quoi, Papyluc, c'est gratuit pour les amis
Bien cordialement
Commenter la réponse de PapyLuc51