A voir également:
- Difficultés avec la fonction SI
- Fonction si et - Guide
- Fonction somme excel - Guide
- Fonction moyenne excel - Guide
- Fonction filtre excel n'existe pas - Forum Excel
- Cette fonction n'est pas disponible actuellement tv lg - Forum Téléviseurs
3 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
12 sept. 2014 à 08:07
12 sept. 2014 à 08:07
Bonjour
peut-être sans vba
= (G9>0)*(12-ENT(G9/9,09))
G9<+0 renvoie 0 et G9>0 renvoie 1; équivalent d'un ET
peut-être sans vba
= (G9>0)*(12-ENT(G9/9,09))
G9<+0 renvoie 0 et G9>0 renvoie 1; équivalent d'un ET
Utilisateur anonyme
12 sept. 2014 à 11:55
12 sept. 2014 à 11:55
Bonjour
Tu n'es pas obligé d'imbriquer tes 11 SI.
Tu peux faire tes comparaisons par dichotomie : un premier SI sépare les valeurs au niveau du 54,54. Dans la première moitié, un SI va séparer au niveau du 27,27 , alors que dans la seconde moitié, tu vas couper au niveau du 72,72 et ainsi de suite jusqu'à ce que tu aies découpé toutes les tranches. Ce qui donne la jolie formule :
Mais si tes catégories sont régulièrement espacées, ce qui est le cas ici, il est évident que la méthode de michel_m est bien meilleure
Tu n'es pas obligé d'imbriquer tes 11 SI.
Tu peux faire tes comparaisons par dichotomie : un premier SI sépare les valeurs au niveau du 54,54. Dans la première moitié, un SI va séparer au niveau du 27,27 , alors que dans la seconde moitié, tu vas couper au niveau du 72,72 et ainsi de suite jusqu'à ce que tu aies découpé toutes les tranches. Ce qui donne la jolie formule :
=SI(A7<54,54;SI(A7<27,27;SI(A7<18,18;SI(A7<9,09;11;10);9);SI(A7<36,36;8;SI(A7<45,45;7;6)));SI(A7<72,72;SI(A7<63,63;5;4);SI(A7<90,9;SI(A7<81,81;3;2);1)))Avec 7 niveaux d'imbrication, tu dois pourvoir distinguer 128 catégories comme ça.
Mais si tes catégories sont régulièrement espacées, ce qui est le cas ici, il est évident que la méthode de michel_m est bien meilleure
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
12 sept. 2014 à 12:15
12 sept. 2014 à 12:15
Et si les catégories ne sont pas espacées régulièrement il y a la formule toute simple EQUIV...
=si( G9;12-EQUIV(G9;0,9,19,34,56....etc;0);"")
=si( G9;12-EQUIV(G9;0,9,19,34,56....etc;0);"")
Sûrement beaucoup plus simple et efficace ! Je ne connaissais pas cette fonction.
Après essais et vérif, petit problème de syntaxe : j'ai l'impression qu'on ne peut pas écrire le tableau de valeurs directement 0,9,19,34,56... mais qu'il faut préciser une étendue (genre B5:B15) qui contient ce tableau. Ce qui n'enlève rien à l'intérêt de cette fonction.
Après essais et vérif, petit problème de syntaxe : j'ai l'impression qu'on ne peut pas écrire le tableau de valeurs directement 0,9,19,34,56... mais qu'il faut préciser une étendue (genre B5:B15) qui contient ce tableau. Ce qui n'enlève rien à l'intérêt de cette fonction.
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 12/09/2014 à 17:05
Modifié par michel_m le 12/09/2014 à 17:05
Exact, merci ;o)
on peut écrire aussi sous une forme matricielle mais en cas de modif, la forme B5:B15 est + facile à manier
on peut écrire aussi sous une forme matricielle mais en cas de modif, la forme B5:B15 est + facile à manier
SI(G9>0;EQUIV(G9;{0,9,19,34,56};0);"")
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
12 sept. 2014 à 18:20
12 sept. 2014 à 18:20
hé oui! la fatigue du vendredi....
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
16 sept. 2014 à 09:38
16 sept. 2014 à 09:38
Pour aisbert
MERCI
de rien...
MERCI
de rien...