Plusieurs Si avec 2 intervalles

Bonjour à tous et à toutes !

Voici une formule qui m’obsède et que je n'arrive pas à trouver : on souhaite mettre, quand c'est possible, chaque individu dans une catégorie parmi les 5, en fonction d'une intervalle de valeurs obtenue dans la variable C, et d'une autre intervalle obtenue dans la variable D.

J'ai essayé plusieurs formules avec SI et ET, mais je n'arrive pas à bien intégrer toutes les conditions. Voici un exemple de formule échouée :

=SI(ET(C12>=263;C12<=292,2);SI(ET(D12>=261;D12<=296);"1");SI(ET(C12>=293;C12<=330,9);SI(ET(D12>=266;D12<=296,9);"2");SI(ET(C12>=293;C12<=330,9);SI(ET(D12>=297;D12<=324);"3");SI(ET(C12>=331;C12<=371);SI(ET(D12>=280;D12<=305,9);"4");SI(ET(C12>=331;C12<=371);SI(ET(D12>=306;D12<=329);"5"))))))

Voyez-vous comment aboutir à une formule efficace?

Merci, et portez-vous bien!

10categories.xlsx (54.07 Ko)

Bonjour et

à partir d'un tableau ...

Arc Bitragus Frontal/Gnathion261266280297306324329
26311
2932333
3314455
371
...peut-être à corriger légèrement !

de quoi masquer toute la population !

=INDEX($G$2:$M$5;EQUIV(B2;$F$2:$F$5;1);EQUIV(C2;$G$1:$M$1;1))
9categories.xlsx (63.89 Ko)

Bonjour Steelson, et merci d'avoir pris le temps de répondre !

J'ai regardé le tableau que tu proposes avec attention, mais je me suis mal exprimée....

Je cherche une formule qui pour chaque individu attribue une catégorie en comparant les valeurs des deux variables aux intervalles. Ainsi pour appartenir à la catégorie 1, l'individu doit avec une valeur C comprise entre ≥ 263 et ≤ 292,2 et une valeur D comprise entre ≥ 261 et ≤ 296

Il devait manquer un 1 dans la case 263x280.

Maintenant, je t'ai proposé une solution à partir d'un tableau dont les valeurs restent à ajuster. Cela simplifie la formule avec des SI.

Arc Bitragus Frontal/Gnathion261266280297306324329
263111
2932333
3314455
371
4categories.xlsx (63.98 Ko)

Effectivement, c'est une manière d'aborder le problème !

Mais je ne cherche pas à simplifier la formule, seulement à la rendre correcte. En effet, j'aimerais savoir quelle formule appliquer pour cette / ce genre de situation, sans passer par un autre moyen

Pourriez vous envoyer un tableau des valeurs limites de C et D ainsi que la liaison aux catégories d'individu(ou un extrait)

Pourrais je travailler en visual basic?)

Effectivement, c'est une manière d'aborder le problème !

Mais je ne cherche pas à simplifier la formule, seulement à la rendre correcte. En effet, j'aimerais savoir quelle formule appliquer pour cette / ce genre de situation, sans passer par un autre moyen

capture

Votre humour doit faire sensation sur Facebook

Pourriez vous envoyer un tableau des valeurs limites de C et D ainsi que la liaison aux catégories d'individu(ou un extrait)

Pourrais je travailler en visual basic?)

Bonjour, ces valeurs sont dans le document Excel joint dans le 1er post : C=Arc Bitragus Frontal et B=Arc Bitragus Gnathion

Non si possible, je ne l'utilise pas et j'aimerais avoir une formule que je puisse réutiliser et remodeler moi-même !

Voyez-vous comment aboutir à une formule efficace?

Merci, et portez-vous bien!

Quand une personne avec plus de 14.000 messages sur le forum prend la peine de répondre (et c'est cool, parce que j'allais prendre du temps pour donner la même solution que lui), et essaie de te mettre sur la voie pour répondre à ta question, je pense qu'on peut lui faire confiance.

Après, si tu n'es pas arrivé à la solution avec ta méthode, il y a certainement une raison...

Je l'ai remercié et j'ai ajouté que sa méthode était certainement bonne, il n'y a aucun soucis là-dessus.

Néanmoins j'ai précisé que je ne cherchais pas à arriver au résultat avec un tableau, mais avec une formule. Le résultat est peu important ici, ce que je veux c'est comprendre et réussir à appliquer une formule pour ce cas de figure.

Maintenant si vous ne souhaitez pas parler du sujet, inutile de perdre votre temps ici

Mais je ne cherche pas à simplifier la formule, seulement à la rendre correcte. En effet, j'aimerais savoir quelle formule appliquer pour cette / ce genre de situation, sans passer par un autre moyen

Re-

D'abord, j'aurais du être plus explicite dans la réponse en mettant de XXX à YYY

J'utilise EQUIV mais avec le dernier paramètre à 1 (et non 0 comme d'habitude) pour rechercher la borne inférieure

J'ai 2 remarques :

  • je ne pense pas sincèrement que les valeurs de Arc Bitragus Frontal/Gnathion doivent aussi précises que cela pour déterminer la catégorie de masque s'il s'agit bien de cela
  • ensuite, je suis incapable de faire une formule comme la tienne ! c'est trop complexe à écrire alors que la formule que je propose issue d'un tableau (certains appelleraient cela abaque) me paraît plus logique ... et du coup c'est un gage de qualité et précision, de maintenabilité si tes bornes changent; du reste JoyeuxNoel que je salue prenait la même voie.

Et donc je suis désolé, non, je ne suis pas capable de corriger ta formule !

Le sujet ici est, justement, qu'avec des si imbriqués c'est ingérable.

Pour t'en convaincre, essaie déjà de faire fonctionner ta formule pour qu'elle retourne le bon résultat pour le 1er carré des possibilités du tableau donné par steelson. (bornes 261, 266 dans un sens, et bornes 263 293 de l'autre)

Tu en es tout à fait capable, tes si(et()) sont parfaitement bien imbriqués.

Une fois que ça marche, rajoute une ligne et une colonne au tableau des possibles. Vois comme ça complique. Et imagine en rajoutant toutes les possibilités.

Steelson passe par un tableau, et une formule qui interroge ce tableau. Il y a donc une formule, comme tu le souhaites. Et comme le dit steelson, pour la maintenance et l'évolution de ton fichier, il n'y a aucune comparaison possible entre les deux solutions.

=SI(ET(C2>=263;C2<=292,2;D2>=261;D2<=296);1;SI(ET(C2>=293;C2<=330,9;D2>=266;D2<=296,9);2;SI(ET(C2>=293;C2<=330,9;D2>=297;D2<=324);3;SI(ET(C2>=331;C2<=371;D2>=280;D2<=305,9);4;SI(ET(C2>=331;C2<=371;D2>=306;D2<=329);5;"")))))
=SI(ET(C2>=263;C2<=292,2;D2>=261;D2<=296);1;SI(ET(C2>=293;C2<=330,9;D2>=266;D2<=296,9);2;SI(ET(C2>=293;C2<=330,9;D2>=297;D2<=324);3;SI(ET(C2>=331;C2<=371;D2>=280;D2<=305,9);4;SI(ET(C2>=331;C2<=371;D2>=306;D2<=329);5;"")))))

Bonjour Steelson, effectivement cette formule fonctionne, je l'avais déjà écrite mais tellement surprise du résultat que je la pensais fausse

En revérifiant tout à la main hier je me suis rendue compte que c'était normal

Bonne journée à vous

Rechercher des sujets similaires à "intervalles"