Somme Si

Résolu
bestkeeper Messages postés 93 Statut Membre -  
 gilou -
Bonjour,

je souhaite effectuer une fonction Si mais je rencontre un soucis.

Voici ma formule : =SI(M2<=AL2;"< à 1,1 m3"; SI(M2>=AL3;"de 1,11 à 2 m3"; SI(M2<=AL4;"de 1,11 à 2 m3"; SI(M2>=AL5;"de 2,01 à 3 m3"; SI(M2<=AL6;"de 2,01 à 3 m3"; SI(M2>=AL7;"de 3,01 à 4 m3"; SI(M2<=AL8;"de 3,01 à 4 m3"; SI(M2>=AL9;"de 4,01 à 5 m3"))))))))

M2 correspond à une valeur, et la fonction doit me retourner le résultat exemple : de 1,11 à 2 m3 en N2.
AL2 jusqu'a AL9 mes données sources.

Ma formule fonctionne jusqu'a la deuxième condition, mais après plus rien.

Mercid e votre aide.

@+

11 réponses

le hollandais volant Messages postés 5294 Statut Membre 1 058
 
=SI(M2<=AL2;"< à 1,1 m3"; SI(M2>=AL3;"de 1,11 à 2 m3";

si on arrive là, c'est que : AL3 <= M2 <= AL2

Donc en toute logique, je suppose que la colonne AL contient des valeurs croissantes (si on décent).

Donc quand on arrive à la 3eme condition : SI(M2<=AL4) celle ci est forcément vraie car on a :

AL3 <= M2 <= AL2 <= AL4. Ainsi, le tableur va voir à la fin du "SI" car le "valeur si faux" n'est pas pric en compte. Tu comprend ?

Là il faudrait pouvoir faire un condition avec "si (M2 >= AL3) ET (M2 <= AL2) alors "…"

Ne serait t'il pas plus simple de faire :

dans le colonne AL tu as : AL2, AL3, AL4, AL5…
ensuite, tu met dans la colonne AK :
AK1 = AL3 - AL2
AK2 = AL4 - AL3
AK3 = AL5 - AL4


Puis, tu fait dans la colonne AJ :
AJ1 = M2 - AK1
AJ2 = M2 - AK2
(il faudrait mettre AJ1 = $M$2 - AK1, etc.)

Ainsi, si M2 est plus grand que AK1, on aura AJ1 qui est positif. Mais si'l est plus petit que AJ2, la différence sera plus petite.

Il suffit ensuite de faire une condition sur AJ_ pour voir s'il est négatif ou pas. S'il est négatif, tu fait afficher ce que tu veux.

Tu comprend, même si c'est farfelu ?

0
bestkeeper Messages postés 93 Statut Membre
 
merci de ta réponse.
En fait mes données en colonne AL sont les suivantes :
1,1 en AL2
1,11
2
2,01
3
3,01
4
4,01
5
5,01
7
7,01
10 en Al10

en fonction de ma valeur en M2, je souhaite afficher
< à 1,1 m3
de 1,11 à 2 m3
de 1,11 à 2 m3
de 2,01 à 3 m3
de 2,01 à 3 m3
de 3,01 à 4 m3
de 3,01 à 4 m3
de 4,01 à 5 m3
de 4,01 à 5 m3
de 5,01 à 7 m3
de 5,01 à 7 m3
de 7,01 à 10 m3
de 7,01 à 10 m3

voili voilou
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 447
 
Bonjour
je ne sais pas si vous avez exactement recopier la formule que vous utilisez, mais si c'est le cas, qu'elle s'arrète à la deuxième condition telle qu'elle est écrite ici est tout à fait normal, car vous avez écrit dans cette deuxiéme condition:
"; SI(M2>=AL3;"de 1,11 à 2 m3";
Il me semble que
"; SI(M2<=AL3;"de 1,11 à 2 m3"; serait plus dans la logique des choses, car tout ce qui est > AL3 correspond à la condition que vous avez posée, donc excel stope là ces analyses.

Crdlmnt
0
le hollandais volant Messages postés 5294 Statut Membre 1 058
 
Tu n'a pas besoin de faire une case pour 7 et une pour 7.01. Tu peux donc virer une case sur 2. On suposera donc que si M2 est entre 7 et 10, on exclu 7 et on inclue 10.

si M2 < 10 ; alors il est peut-être < 7 ?
Si oui, il est aussi peut-être inférieur à 5 ? SINON, c'est qu'il est entre 7 et 10.

C'est là la procédure à faire. Voici la formule : (à corriger, car je la fait de tête, j'ai pas possibilité de la tester ici même)
AL2 : 1
AL3 : 2
AL4 : 3
AL5 : 4
AL6 : 5
AL7 : 7
AL8 : 10

SI(M2<=AL8;SI(M2<=AL7;SI(M2<=AL6;SI(M2<=AL5;SI(M2<=AL4;SI(M2<=AL3;SI(M2<=AL2;"< à 1,1 m3 ";0);"de 1,11 à 2 m3");"de 2,01 à 3 m3");"de 3,01 à 4 m3");"de 4,01 à 5 m3");"de 5,01 à 7 m3 ");"de 7.01 à 10 m3")


Voilà. En fait, on regarde si M2 est inférieur au plus grand. Si il l'est, il est peut-être aussi inférieur au précédent ? Si c'est le cas, il est peut-être aussi plus petit qui celui d'encore avant ? etc.

Si par exemple, il est plus petit que le plus grand et aussi plus petit que celui d'avant, mais pas plus petit que le 3eme, alors il est situé entre le 3eme plus grand et le 2nd plus grand !

0

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

Posez votre question
bestkeeper Messages postés 93 Statut Membre
 
Effectivement c'est parfait.
Merci de m'avoir consacré un peu de votre temps.

Cdlt,
0
le hollandais volant Messages postés 5294 Statut Membre 1 058
 
Cela marche ?

Super !

Oh, c'est avec plaisir que je passe de temps en temps ici^^ je m'enrichit aussi en aidant les autres, c'est toujours bon^^

bonne soirée !
0
bestkeeper Messages postés 93 Statut Membre
 
=SI(M2<=AL2;"< à 1,1 m3"; SI(M2<=AL3;"de 1,11 à 2 m3"; SI(M2<=AL4;"de 1,11 à 2 m3"; SI(M2<=AL5;"de 2,01 à 3 m3"; SI(M2<=AL6;"de 2,01 à 3 m3"; SI(M2<=AL7;"de 3,01 à 4 m3"; SI(M2<=AL8;"de 3,01 à 4 m3"; SI(M2<=AL9;"de 4,01 à 5 m3"; SI(M2<=AL10;"de 4,01 à 5 m3"; SI(M2<=AL11;"de 5,01 à 7 m3"; SI(M2<=AL12;"de 5,01 à 7 m3"; SI(M2<=AL13;"de 7,01 à 10 m3"; SI(M2<=AL14;"de 7,01 à 10 m3";))))))))

Excel me retourne une erreur à l'endroit souligné ????

Merci de votre aide.

cdlt,
0
bestkeeper Messages postés 93 Statut Membre
 
Apparement il est impossible d'imbriquer plus de sept fonctions (dixit aide excel).

Peut on faire autrement ??
0
le hollandais volant Messages postés 5294 Statut Membre 1 058
 
ah…
Pas de problème, à priori.

=SI(M2<=AL2;"< à 1,1 m3"; SI(M2<=AL3;"de 1,11 à 2 m3"; SI(M2<=AL4;"de 1,11 à 2 m3"; SI(M2<=AL5;"de 2,01 à 3 m3"; SI(M2<=AL6;"de 2,01 à 3 m3"; SI(M2<=AL7;"de 3,01 à 4 m3"; SI(M2<=AL8;"de 3,01 à 4 m3"; SI(M2<=AL9;"de 4,01 à 5 m3"; M3)))))))

Ensuite, dans M3, tu places :

SI(M2<=AL10;"de 4,01 à 5 m3"; SI(M2<=AL11;"de 5,01 à 7 m3"; SI(M2<=AL12;"de 5,01 à 7 m3"; SI(M2<=AL13;"de 7,01 à 10 m3"; SI(M2<=AL14;"de 7,01 à 10 m3";)))))

Bien-sûr, tu peux placer n'importe quelle case au lieu de M3.
0
gilou
 
bonjour
on peut aussi utiliser CHOISIR ( EQUIV qui me semble adaptée au sujet tout en evitant la masse des conditions

bonne soirée
0
bestkeeper Messages postés 93 Statut Membre
 
Merci c'est parfait, nickel.

@+
0
le hollandais volant Messages postés 5294 Statut Membre 1 058
 
ok !

bye
0