XL 2016 Mise en forme conditionnelle et formules matricielles

loicoss

XLDnaute Junior
Bonsoir le Forum,

Après plusieurs recherches, je ne trouve pas de solution pour appliquer une mise en forme conditionnelle sur le résultat d'une formule matricielle.

Voici ma formule matricielle :

SOMME(SI(FREQUENCE(SI((INDEX(T;;3)=$C4)*(INDEX(T;;4)<>$C4)*(INDEX(T;;5)<>"Aide au sol")*(INDEX(T;;5)<>"");EQUIV(INDEX(T;;2);INDEX(T;;2);0));EQUIV(INDEX(T;;2);INDEX(T;;2);0))>0;1))&"/90";(SI($F4="x";SOMME(SI(FREQUENCE(SI((INDEX(T;;3)=$C4)*(INDEX(T;;4)<>$C4)*(INDEX(T;;5)<>"Aide au sol")*(INDEX(T;;5)<>"");EQUIV(INDEX(T;;2);INDEX(T;;2);0));EQUIV(INDEX(T;;2);INDEX(T;;2);0))>0;1))&"/20"

Le résultat obtenu dans ma cellule est : 1/20 (le /20 étant ajouté en fin de formule par &"/20")

Je voudrais, en fonction du résultat, appliquer un couleur à la cellule contenant cette formule.

résultat < à 10/20 rouge
résultat < à 20/20 orange
résultat >= à 20/20 vert

Hors quand je saisie cette formule dans la MFC j'ai une erreur m'indiquant "la formule ne contient pas de parenthèse ouvrante ou fermante"

Auriez-vous une solution à me proposer pour résoudre ce problème ?

En vous remerciant par avance.

Bonne soirée.
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Il me semble que tu as plus de parenthèses ouvrantes que de parenthèses fermantes (2 de plus).


Si, au lieu d'ajouter "/20" par concaténation, tu te contentes d'afficher ce "/20" à la fin du contenu de ta cellule (en utilisant un format personnalisé), tu n'as alors plus qu'à tester la valeur du contenu de la cellule (x < 10, 10 <= × < 20, x >= 20) dans ta MFC.

Si cette possibilité te convient, l'as-tu essayée ?
 

loicoss

XLDnaute Junior
Bonsoir et merci pour cette réponse,

Alors l'idée est super bonne, le problème est que ma formule matricielle est plus compliquée que ce que j'ai fait paraitre, car j'ai d'autres conditions et en fonction de celle-ci j'ai 2 options /20 ou /90.

Voici ma formule complète :

=SI(ESTVIDE($C4);"";SI($D4="x";SOMME(SI(FREQUENCE(SI((INDEX(T;;3)=$C4)*(INDEX(T;;4)<>$C4)*(INDEX(T;;5)<>"Aide au sol")*(INDEX(T;;5)<>"");EQUIV(INDEX(T;;2);INDEX(T;;2);0));EQUIV(INDEX(T;;2);INDEX(T;;2);0))>0;1))&"/90";(SI($F4="x";SOMME(SI(FREQUENCE(SI((INDEX(T;;3)=$C4)*(INDEX(T;;4)<>$C4)*(INDEX(T;;5)<>"Aide au sol")*(INDEX(T;;5)<>"");EQUIV(INDEX(T;;2);INDEX(T;;2);0));EQUIV(INDEX(T;;2);INDEX(T;;2);0))>0;1))&"/20";""))))
 

loicoss

XLDnaute Junior
Bonjour le forum,

J'ai tester à nouveau les MFC avec la formule matricielle et cela fonctionne. J'avais effectivement mal compté les parenthèses.
Cependant, la formule dans la MFC est lourde.

Ne voyez-vous pas d'autres solutions pour répondre à mon besoin ?

Merci d'avance.
 

Discussions similaires

Réponses
6
Affichages
555

Statistiques des forums

Discussions
312 112
Messages
2 085 409
Membres
102 884
dernier inscrit
Macarena