Excel fonction SI avec plusieurs SI

Fermé
topchop Messages postés 6 Date d'inscription jeudi 27 septembre 2012 Statut Membre Dernière intervention 29 septembre 2012 - 27 sept. 2012 à 18:32
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 29 sept. 2012 à 11:34
Bonjour,
nouveau sur ce forum et pas un crac Excel,
j'ai un tableau avec une cellule E7 qui indique un nombre variable selon une formule
je voudrais que suivant le résultat de cette cellule E7 ça me conditionne différentes valeurs d'une autre cellule F7 mais pour plus de 8 cas differents
voici ma formule mais je suis limité en nombre

=SI(E7<2;"220";SI(E7<3;"250";SI(E7<4;"280";SI(E7<5;"310";SI(E7<6;"340";SI(E7<7;"370";SI(E7<8;"400";SI(E7<9;"430";))))))))

merci pour votre aide
Vince



A voir également:

8 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
27 sept. 2012 à 19:26
Bonsoir
d'une, si vous avez excel après 2003 vous pouvez utiliser un nombre illimité de SI.
Mais vous pouvez aussi construire un tableau selon cet exemple à adapter:
en A1: 0
et ensuite A2:2 A3:3 etc...
en B1 en ligne avec le 0 la 1° valeur soit 220 etc...
et la formule:
=RECHERCHEV(E7;A1:B10;2)
qui cherchera en A la valeur directement inférieure à E7 pour ressortir la valeur de B sur la ligne trouvée.

Crdlmnt

0
Raymond PENTIER Messages postés 58721 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 15 novembre 2024 17 236
28 sept. 2012 à 05:56
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
28 sept. 2012 à 07:48
Bonjour,

puisque tu retournes des nombres il est inutile de les mettre entre " ".

Comme E7 prend toutes les valeurs à partir de 1 tu peux utiliser choisir :
=CHOISIR(E7;220;250;280;310;340;370;400;430)

Et comme en plus tu as un pas régulier de 30 autant mettre :
=E7*30+190
0
topchop Messages postés 6 Date d'inscription jeudi 27 septembre 2012 Statut Membre Dernière intervention 29 septembre 2012
28 sept. 2012 à 17:27
merci pour vos réponses surtout Eriiic avec =CHOISIR ...
qui marche bien, mieux que =E7*30+190 car E7 comporte 2 décimales et moi je veux qu'en cellule F7 j'ai 220 250 280 ....
Maintenant que c'est réglé grâce à vous une autre question:

j'ai une autre cellule E12 qui fonctionne avec une formule similaire à E7
je voudrais que si la somme E7+E12 <2, la valeur en F12 =0
si somme E7+E12 compris entre 2 et 3, la valeur en F12 = +30
si la somme E7+E12 <3, la valeur en F12 =0
si somme E7+E12 compris entre 3 et 4, la valeur en F12 = +30
si la somme E7+E12 <4, la valeur en F12 =0
si somme E7+E12 compris entre 4 et 5, la valeur en F12 = +30
si la somme E7+E12 <5, la valeur en F12 =0

et ce jusqu'à <27
est ce possible???
merci d'avance
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
Modifié par eriiic le 28/09/2012 à 17:41
Re,

car E7 comporte 2 décimales
et alors ? choisir() prend la partie entière.
Et sinon tu as les fonction arrondi(), arrondi.sup() etc

est ce possible???
non
si la somme E7+E12 <3, la valeur en F12 =0
déjà inclu dans la ligne précédente :
si somme E7+E12 compris entre 2 et 3, la valeur en F12 = +30
et pareil pour beaucoup d'autres lignes suivantes...

Dans la vie il faut CHOISIR !!!!

eric
0

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

Posez votre question
topchop Messages postés 6 Date d'inscription jeudi 27 septembre 2012 Statut Membre Dernière intervention 29 septembre 2012
28 sept. 2012 à 22:07
je ne veut pas arrondir j'ai besoin des décimales
mais je voudrais qu'a chaque fois que E7+E12 donne un chiffre rond la valeur F12 soit nulle si non dans tous les autres cas +30
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
Modifié par eriiic le 28/09/2012 à 22:46
Re,

je voudrais qu'a chaque fois que E7+E12 donne un chiffre rond la valeur F12 soit nulle si non dans tous les autres cas +30
ça se dit : si E7+E12 est un entier je veux 0, sinon 30

bizarre ta demande mais bon :
=SI(OU((E7+E12)<2;MOD(E7+E12;1)=0);0;30)

Et je pense toujours que tu peux singulièrement raccourcir pour F7:
=ENT(E7)*30+190
sous réserve que ton explication soit exacte, car tu es souvent approximatif et incomplet...

eric

Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
0
topchop Messages postés 6 Date d'inscription jeudi 27 septembre 2012 Statut Membre Dernière intervention 29 septembre 2012
28 sept. 2012 à 23:28
merci Eric de t'occuper de mon problème
effectivement ta formule =ENT(E7)*30+190 fonctionne bien il me manquait ENT

pour ma deuxième demande ta réponse s'approche du but ça marche jusqu'à ce que la somme E7+E12 = "2" mais ça ne marche pas si la somme de ces 2 cellules =3 ou =4 ainsi de suite
par contre au delà de 2 le résultat reste en permanence à 30

j'espère avoir été clair mais pas évident pour toi sans voir et surtout avec des explication d'un novice
mais on s'approche de ce que je veux
merci
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
29 sept. 2012 à 01:25
Re,

par contre au delà de 2 le résultat reste en permanence à 30

Ben oui, c'est bien ce que tu as demandé :
si somme E7+E12 compris entre 2 et 3, la valeur en F12 = +30
si somme E7+E12 compris entre 3 et 4, la valeur en F12 = +30
si somme E7+E12 compris entre 4 et 5, la valeur en F12 = +30

F12 = +30 écrit comme ça je l'interprète comme F12 doit être égal à l'entier 30 affublé de son signe, et mathématiquement ça ne veut rien dire d'autre.
Tu peux relire la fin de mon post 7.

C'est peut-être ça que tu veux :
=SI(MOD(E7+E12;1)=0;0;ENT(E7+E12-1)*30)

La prochaine fois, vu tes difficultés à exposer ton problème, dresse une liste de valeurs caractéristiques pour les valeurs en entrée et ce que tu veux obtenir en réponse
Par exemple pour ici :
E7 E12 je veux
1 0 0
1.5 1 30
1.5 1.5 0
2 1 0
2.1 1 60
2.8 2.9 120

eric
0
topchop Messages postés 6 Date d'inscription jeudi 27 septembre 2012 Statut Membre Dernière intervention 29 septembre 2012
29 sept. 2012 à 10:23
tu as raison je vais essayer d'être plus clair

E7+E12 F12

1 0
1,01.... 30
1,99 30
2 0
2,01.... 30
2,99 30
3 0
3,01.... 30
3,99 30
4 0
etc....

et concernant la première formule =ENT(E7)*30+190 tout fonctionne parfaitement sauf que je voudrais
E7 F7

de 0 à 1.99 220
de 2 à 2.99 250
de 3 à 3.99 280
de 4 à 4.99 310
de 5 à 5.99 340

etc...

désolé pour mes explications précédentes
et merci pour ta patience
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
29 sept. 2012 à 11:34
Bonjour,

Tu te fous de ma tronche ?
E7+E12 F12
1 0
1,01.... 30
1,99 30
2 0
2,01.... 30
2,99 30
3 0
3,01.... 30
3,99 30
4 0
etc....


C'est ce que faisait ma réponse du post 7
Sauf pour les lignes 2 et 3 (pour 1.xx donc) car :
je voudrais que si la somme E7+E12 <2, la valeur en F12 =0

Allez, tu m'as assez fait perdre mon temps.
Bye bye
eric
0