Somme Si
Résolu
bestkeeper
Messages postés
93
Statut
Membre
-
gilou -
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.
@+
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.
@+
Configuration: Windows XP Internet Explorer 6.0
11 réponses
-
=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 ?
-
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 -
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 -
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 !
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Effectivement c'est parfait.
Merci de m'avoir consacré un peu de votre temps.
Cdlt, -
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 ! -
=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, -
Apparement il est impossible d'imbriquer plus de sept fonctions (dixit aide excel).
Peut on faire autrement ?? -
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. -
-