Formule Conditionnelle Excel

Résolu/Fermé
dcprof - 12 janv. 2009 à 17:24
Raymond PENTIER Messages postés 58719 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 novembre 2024 - 14 janv. 2009 à 13:48
Bonjour,

J'ai une liste de valeurs (entre 0 et 100) et j'aimerais attribuer une lettre à chaque tranche de valeur (A+, A, A-, B+, B, B-, C+), comme suit:
entre 0 et 64: E
entre 64,1 et 65,5: D+
... et ainsi de suite, jusqu'à 100.
Le problème est qu'Excel ne me laisse pas utiliser la formule suivante:
=SI(N5>88,5;"A+";SI(N5>84;"A"; SI(N5>81;"A-";SI(N5>79,5;"B+";SI(N5>77;"B";SI(N5>75;"B-";SI(N5>72,5;"C+";SI(N5>68;"C";SI(N5>66,5;"C-";SI(N5>65,5;"D+";SI(N5>64;"D";"E")))))))))))

j'ai un message comme "...trop de niveaux d'imbrications..."

Que faire?

D'avance, merci beaucoup

5 réponses

Raymond PENTIER Messages postés 58719 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 novembre 2024 17 233
14 janv. 2009 à 13:48
Grand merci à vous deux : Je suis un peu moins ignorant que tout-à-l'heure !
1
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 706
12 janv. 2009 à 17:54
bonjour

Tu te fais un petit tableau avec tes valeurs et après avec une recherchev toute simple tu as ton résultat.

Regardes cet exemple dans l'onglet notation puis son utilisation dans les tableaux.
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 858
12 janv. 2009 à 17:54
Bonsoir,

tu peux essayer avec :
=CHOISIR(--(N5>=0)--(N5>88.5)--(N5>84)--(N5>81)--(N5>79.5)--(N5>77)--(N5>75)--(N5>72.5)--(N5>68)--(N5>66.5)--(N5>65.5)--(N5>64);"E";"D";"D+";"C-";"C";"C+";"B-";"B";"B+";"A-";"A";"A+")

cordialement
0
Merci infinniment à vous deux!

La formule CHOISIR marche parfaitement.

Cordialement.
dcprof
0
Raymond PENTIER Messages postés 58719 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 novembre 2024 17 233
14 janv. 2009 à 01:55
Bonjour, JvDo

Je suis très intrigué par ta syntaxe, que je vois pour la toute première fois : =CHOISIR(--(N5>=0)--(N5>88.5)--(
Pourrais-tu s'il te plaît m'expliquer le rôle des --

J'ai vérifié qu'en remplaçant les deux tirets par un seul, ça marche aussi. Mais remplacer par un point-virgule
ne marche plus
...
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 858
14 janv. 2009 à 12:51
Bonjour,

je met des -- par double flemmardise :

1) ça me permet de taper 2 fois sur la même touche (au lieu de mettre un *1) pour forcer la numérisation d'un booléen.
2) ça m'évite de vérifier si la numérisation du booléen est automatique ou pas.

si je comprends bien, ça n'était pas forcémént utile ici.

cordialement
0

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

Posez votre question
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 706
14 janv. 2009 à 09:23
bonjour Raymond,

Tu as une rapide explication en cherchant tiret dans cette page.

Cela équivaut à écrire :
=CHOISIR(((N5>=0)+(N5>88,5)+(N5>84)+(N5>81)+(N5>79,5)+(N5>77)+(N5>75)+(N5>72,5)+(N5>68)+(N5>66,5)+(N5>65,5)+(N5>64));"E";"D";"D+";"C-";"C";"C+";"B-";"B";"B+";"A-";"A";"A+")


Même si je veux bien faire confiance au demandeur dcprof, il me semble que la formule n'est pas exacte car lorsque l'on a une note exacte, on a la transcription inférieure : les > devraient être des >=

On peut aussi écrire la formule :
=CHOISIR(EQUIV(N5;{0;64;65,5;66,5;68;72,5;75;77;79,5;81;84;88,5};1) ;"E";"D";"D+";"C-";"C";"C+";"B-";"B";"B+";"A-";"A";"A+")
0