Conditions sous excel 2007

Résolu/Fermé
buticelli Messages postés 1 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 12 février 2013 - 12 févr. 2013 à 17:46
 buticelli - 13 févr. 2013 à 09:35
Bonjour,

je dois entrer le montant de mon cout de transport dans une cellule
et ce cout est déterminé en fonction du poids de la livraison
j'ai donc 6 tranches avec un tarif correspondant
j'ai mis cette formule mais ça ne fonctionne pas

=SI(F9=0;0;SI(ET(F9<=60);36,34;SI(ET(60<F9<=90);45,42;SI(ET(90<F9<=300);403,75;SI(ET(300<F9<=800);335,11;SI(ET(800<F9<=1500);294,74;SI(ET(F9>1500);254,36)))))))

sachant que F9 est mon poids...

au secours...


A voir également:

2 réponses

aquarelle Messages postés 7140 Date d'inscription dimanche 8 avril 2007 Statut Modérateur Dernière intervention 25 mars 2024 1 302
12 févr. 2013 à 17:58
Bonsoir,

Essaie comme cela :
=SI(F9=0;0;SI(F9<=60;36,34;SI(ET(60<F9;F9<=90);45,42;SI(ET(90<F9;F9<=300);403,75;SI(ET(300<F9;F9<=800);335,11;SI(ET(800<F9;F9<=1500);294,74;SI(ET(F9>1500);254,36)))))))
0
merci beaucoup !!!
0
Bruce Willix Messages postés 11968 Date d'inscription mardi 24 mai 2011 Statut Contributeur Dernière intervention 12 juin 2018 2 587
12 févr. 2013 à 18:02
Tu ne dois pas faire d'intervalles. Sous excel, on n'écrit pas a<x<b mais ET(x>a;x<b). Ceci dit, tu peux t'en passer quand tu imbriques des SI entre eux. Par contre il faudra que tu nous écrives de façon "textuelle" quelles sont tes critères/conditions, car à lire la formule on ne comprend pas plus qu'Excel ce que tu veux. Explications:

=SI(F9=0;0;SI(ET(F9<=60);36,34;SI(ET(60<F9<=90);45,42;SI(ET(90<F9<=300);403,75;SI(ET(300<F9<=800);335,11;SI(ET(800<F9<=1500);294,74;SI(ET(F9>1500);254,36)))))))

On va prendre juste les deux premier SI, comme ça tu comprendras. La formule si c'est =SI(condition;réponse_si_vrai;réponse_si_faux)

Si on prend ton premier SI:
=SI(F9=0;0;SI
Ce qui signifie: "SI mon poids est égal à zéro alors mon tarif est aussi égal à zéro sinon SI..." et jusqu'ici tout va bien !

Mais pour la suite:
SI(ET(F9<=60);36,34;SI(ET(60<F9<=90);45,42
Ce qui signifie, en continuant le SI précédent:
"...sinon SI mon poids est à la fois plus petit que 60 [Et rien du tout] alors mon tarif est de 36.34... sinon SI..."

Tu n'a pas non plus besoin de faire des intervalles; une valeur qui n'est pas plus petite ou égale à zéro et qui n'est pas plus petite ou égale à 60 est forcément plus grande que 60.

Je te propose donc:

=SI(F9<=0;0;SI(F9<=60;36,34;SI(F9<=90;45,42;SI(F9<=300;403,75;SI(F9<=800;335,11;SI(F9<=1500;294,74;254,36))))))
0
merci beaucoup
0