Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment ecrire correctement la formule

10 réponses
Avatar
Marc Dayde
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0) Comment
faut il que je l'écrive? But dela manip : si dans E36, il y a "L30", la
cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.

10 réponses

Avatar
Philippe.R
Bonjour Marc,
=SI((E36="L30");10;SI((E36="A90");30;SI((E36="A60");20;0)))
devrait mieux fonctionner
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Marc Dayde" a écrit dans le message de
news:c5b0ep$hbq$
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0) Comment
faut il que je l'écrive? But dela manip : si dans E36, il y a "L30", la
cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.




Avatar
Marc Dayde
Merci. Ca fonctionne!
"Philippe.R" a écrit dans le message de
news:
Bonjour Marc,
=SI((E36="L30");10;SI((E36="A90");30;SI((E36="A60");20;0)))
devrait mieux fonctionner
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Marc Dayde" a écrit dans le message de
news:c5b0ep$hbq$
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0)
Comment


faut il que je l'écrive? But dela manip : si dans E36, il y a "L30",
la


cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.








Avatar
Patrick Bastard
Bonjour, Marc.
Essaie conne ça : =SI(E36="L30";10;SI(E36="A90";30;SI(E36="A60";20;)))
Principe;
1° : si(condition1;résultat1;résultat2)
2° : si(condition1;résultat1;si(condition2;résultat2;résultat3)).
J'espère t'avoir dépanné.

Bien cordialement,


--
==================================== P. Bastard.
Pour me contacter, remplacez "Chez" par @ dans l'adresse

Une foule de conseils utiles sur le site de Misange :
http://www.excelabo.net


"Marc Dayde" a écrit dans le message de
news:c5b0ep$hbq$
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0) Comment
faut il que je l'écrive? But dela manip : si dans E36, il y a "L30",
la

cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.




Avatar
Philippe.R
C'était avec plaisir Marc !
--
Amicales Salutations

"Marc Dayde" a écrit dans le message de
news:c5b1li$s38$
Merci. Ca fonctionne!
"Philippe.R" a écrit dans le message de
news:
Bonjour Marc,
=SI((E36="L30");10;SI((E36="A90");30;SI((E36="A60");20;0)))
devrait mieux fonctionner
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Marc Dayde" a écrit dans le message de
news:c5b0ep$hbq$
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0)
Comment


faut il que je l'écrive? But dela manip : si dans E36, il y a "L30",
la


cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.












Avatar
FxM
Marc Dayde wrote:

Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0) Comment
faut il que je l'écrive? But dela manip : si dans E36, il y a "L30", la
cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.


Bonjour,

si e36 = "L30" alors 10 sinon ...
-> si (e36 = "L30" ; 10 ;

si e36 = "A90" alors 30 sinon ...
-> si (e36 = "A90" ; 30 ;

si e36 = "A60" alors 20 sinon 0
-> si (e36 = "A60" ; 20 ; 0
ne pas oublier de fermer les parenthèses des si(...) que l'on a ouvert
-> )))

Donc en regroupant :
=si(e36="L30";10; si(e36="A90";30; si(e36="A60";20; 0 )))

@+
FxM

Avatar
Marc Dayde
Ok, mais combien peut on mettre de si dans la formule? Le neuvieme si dans
ma formule ne semble pas le bienvenu. Sinon comment pourrait je écrire ,
pour enlever une condition : Si E36 = "S60" ou "S90";15(résultat:15)

"FxM" a écrit dans le message de
news:uo%
Marc Dayde wrote:

Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0)
Comment


faut il que je l'écrive? But dela manip : si dans E36, il y a "L30",
la


cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.


Bonjour,

si e36 = "L30" alors 10 sinon ...
-> si (e36 = "L30" ; 10 ;

si e36 = "A90" alors 30 sinon ...
-> si (e36 = "A90" ; 30 ;

si e36 = "A60" alors 20 sinon 0
-> si (e36 = "A60" ; 20 ; 0
ne pas oublier de fermer les parenthèses des si(...) que l'on a ouvert
-> )))

Donc en regroupant :
=si(e36="L30";10; si(e36="A90";30; si(e36="A60";20; 0 )))

@+
FxM




Avatar
FxM
Bonjour,

J'avais préparé tout un laïus sur le pourquoi, comment et combien de si
(que j'ai volontairement écourté pour le message que tu as lu). C'est
pourquoi mon message date de 11h17 soit une bonne demi-heure après mes
éminents collègues.

Le contenu était sur deux points :
1) attention à la forme de ce que tu cherches :

"S60" seulement sous forme de texte
-> si(E36 = "S60" ; etc ...

"S60" exactement parmi un autre texte (exemple : "2BS60Z1" en E36)
-> si( trouve("S60";E36;1)>0 ; etc ...

"S60" ou "s60" sous forme de texte parmi un autre texte ou tout seul
-> si( cherche("S60";E36;1)>0 ; etc ...
La nuance est dans la fonction : trouve(..) ou cherche(..)

S60 pour le contenu de la cellule S60
-> si(E36=S60 ; etc ...

2) attention aux nombre d'imbrications
Tu ne peux faire que 7 si (soit 8 résultats possibles).
Au-delà, à moins que tu puisses regrouper des conditions donnant le même
résultat, il te faudra passer par un index/equiv ou rechercheV ou
rechercheH dans une table.

Regroupement de conditions :
=si ( condition ; valeur si vrai ; valeur si faux )
Pour obtenir ta valeur, il faut que ta condition contienne le ou(..)
=si( ou(E36="S60";E36="S90") ; 15 ; autre chose )

Inutile de t'indiquer que la formule peut devenir rapidement inbuvable :o)

index/equiv

Tu places tes valeurs dans deux colonnes. La première reçoit la valeur
d'entrée, la seconde a la valeur de sortie. Exemple :

A | B
4 | S60 | 30
5 | s60 | 30
6 | S90 | 15
7 | s90 | 15

=si(estna(index(b6:b17;equiv(E36;a6:a17;0)));"pas trouvé";
index(b6:b17;equiv(E36;a6:a17;0)))
La formule va de =si( à ;0))) et est à placer en une seule ligne.

b6:B17 -> ta plage de valeurs à renvoyer
a6:a17 -> ta plage de valeurs d'entrée
e36 -> ta cellule

@+
FxM



Marc Dayde wrote:

Ok, mais combien peut on mettre de si dans la formule? Le neuvieme si dans
ma formule ne semble pas le bienvenu. Sinon comment pourrait je écrire ,
pour enlever une condition : Si E36 = "S60" ou "S90";15(résultat:15)

"FxM" a écrit dans le message de
news:uo%

Marc Dayde wrote:


Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI((E36="A60");20;0)



Comment

faut il que je l'écrive? But dela manip : si dans E36, il y a "L30",



la

cellule de calcul doit afficher 10 . Si dans E36, il y a "A90", la
cellu...................afficher 30. merci de vos réponses.


Bonjour,

si e36 = "L30" alors 10 sinon ...
-> si (e36 = "L30" ; 10 ;

si e36 = "A90" alors 30 sinon ...
-> si (e36 = "A90" ; 30 ;

si e36 = "A60" alors 20 sinon 0
-> si (e36 = "A60" ; 20 ; 0
ne pas oublier de fermer les parenthèses des si(...) que l'on a ouvert
-> )))

Donc en regroupant :
=si(e36="L30";10; si(e36="A90";30; si(e36="A60";20; 0 )))

@+
FxM









Avatar
Marc Daydé
je vais passer par le OU pour réduire uniquement une condition. Merci!

Je reviens si ca marche pas.
Avatar
AV
Si tu veux rajouter des wagons de tests, laisse tomber les "SI" et utilise des
matrices de constantes avec la combinaison des fonctions INDEX/EQUIV :

=SI(ESTNUM(EQUIV(E36;{"L30";"A90";"A60";"zaza";"zizi";"zozo";"fifi";"riri;""loul
ou"};0));INDEX({10;30;20;50;55;60;65;70;75};EQUIV(E36;{"L30";"A90";"A60";"zaza";
"zizi";"zozo";"fifi";"riri;""loulou"};0));0)

AV
Avatar
JPhL
-----Message d'origine-----
Bonjour
La formule suivante ne marche pas :
=SI((E36="L30");10;0);SI((E36="A90");30;0);SI
((E36="A60");20;0) Comment

faut il que je l'écrive? But dela manip : si dans
E36, il y a "L30", la

cellule de calcul doit afficher 10 . Si dans E36,
il y a "A90", la

cellu...................afficher 30. merci de vos
réponses.





=si("condition1"="qlque chose";(dans ce cas, le ";" veut
dire "alors")"résultat1";";(dans ce cas, le ";" veut
dire "sinon")si("condition1"="autre chose";... etc...

Donc, le 0 me semble rien avoir à faire dans ta formule.
Ensuite, les parenthèses s'ouvrent après le "si" mais se
ferme à la fin de la formule totale. Donc, ta formule
devrait donner qlque chose comme cela :

=SI(E36=L30;10;SI(E36©0;30;SI(E36¦0;20;0))) Le zéro
apparaîtra dans la case E36 si aucune autre condition
n'est respecté.

Bon, voila ce que j'ai compris à ta question. Et j'espère
t'avoir aidé...

Cordialement ;

JPhL