[Résolu] MFC échelle de couleur sur format texte
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
[Résolu] MFC échelle de couleur sur format texte
bonjour à tous, j'ai une plage de cellules dans laquelle on trouve du contenu au format texte puisqu'il s'agit d'une concaténation d'autres valeurs. Elles apparaissent donc ainsi 84(12) par exemple.
Or, je souhaiterais y appliquer une MFC type "échelle de couleur". Ça n'est évidemment pas possible puisqu'il s'agit de format texte, mais j'aurais souhaité pouvoir reproduire le résultat de la MFC appliquée sur les cellules dont sont extraites les données.
Au cas ou ce ne serait pas clair, un p'tit fichier joint.
Merci d'avance aux contributeurs
Or, je souhaiterais y appliquer une MFC type "échelle de couleur". Ça n'est évidemment pas possible puisqu'il s'agit de format texte, mais j'aurais souhaité pouvoir reproduire le résultat de la MFC appliquée sur les cellules dont sont extraites les données.
Au cas ou ce ne serait pas clair, un p'tit fichier joint.
Merci d'avance aux contributeurs
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par shari le 24 mai 2020 05:51, modifié 4 fois.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- GourOOu
- Messages : 9629
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
Je n’utilise pas LibO, mais tu devrais (re?)lire la FAQ sur le formatage en échelle de couleur :
https://wiki.documentfoundation.org/Faq/Calc/142/fr
Le dernier exemple (donc sur la dernière illustration) montre que l’on peut indexer les valeur min, max et centile sur d’autre cellules.
A +
Je n’utilise pas LibO, mais tu devrais (re?)lire la FAQ sur le formatage en échelle de couleur :
https://wiki.documentfoundation.org/Faq/Calc/142/fr
Le dernier exemple (donc sur la dernière illustration) montre que l’on peut indexer les valeur min, max et centile sur d’autre cellules.
A +
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
bonsoir, et merci pour cette redirection vers l'aide en ligne.
Cependant, dans l'exemple, est simplement illustré le fait qu'on peut modifier les valeurs d'étalonnage de l'échelle avec des valeurs extraites ailleurs. Mais ça ne permet pas de créer une échelle de couleurs dans des cellules "textes".
Cependant, dans l'exemple, est simplement illustré le fait qu'on peut modifier les valeurs d'étalonnage de l'échelle avec des valeurs extraites ailleurs. Mais ça ne permet pas de créer une échelle de couleurs dans des cellules "textes".
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- Grand Maître de l'OOffice
- Messages : 16960
- Inscription : 03 mars 2006 16:02
- Localisation : Venise verte
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
Comme le formatage conditionnel Echelle de couleur ne fonctionne pas sur des textes, la solution va sans doute aller vers une Macro.
Celle-ci devra identifier la couleur de chacune des cellules de la colonne E (code RGB) puis coller cette valeur de couleur dans l'arrière-plan de la cellule en vis à vis de la colonne G, et cela jusqu'à la dernière cellule de la plage de données.
S'il n'y a pas de meilleure solution, tu devras reposter ta demande dans la section Macro du forum.
Comme le formatage conditionnel Echelle de couleur ne fonctionne pas sur des textes, la solution va sans doute aller vers une Macro.
Celle-ci devra identifier la couleur de chacune des cellules de la colonne E (code RGB) puis coller cette valeur de couleur dans l'arrière-plan de la cellule en vis à vis de la colonne G, et cela jusqu'à la dernière cellule de la plage de données.
S'il n'y a pas de meilleure solution, tu devras reposter ta demande dans la section Macro du forum.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
-
- GourOOu
- Messages : 5753
- Inscription : 02 janv. 2009 23:56
Re: MFC échelle de couleur depuis autres cellules
Bonsoir,
Je n'ai pas réussi, dans la MFC Échelle de couleurs, même en utilisant formule en lieu et place de Min et de Max. La formule est là pour aller chercher des valeurs seuils ailleurs que dans la plage visée, mais ces seuils doivent être utilisés par rapport aux valeurs numériques de la plage visée, donc ça ne résout pas le problème.
On peut contourner en utilisant des styles, nommés 1 à 14 en utilisant les mêmes couleurs que dans la MFC Échelle de couleurs et en utilisant la formule de MFC suivante : si on veut être indépendant des données de la colonne E ou bien sinon. Mais bon, cette solution n'est pas satisfaisante dans la mesure où elle crée une palette figée et non dynamique, contrairement à la MFC Échelle de couleurs.
Le wiki donne la méthode de calcul de cette échelle de couleur : il manque juste une fonction du style COLORIER (Cellule;R;V;B) et ça y a pas (j'ai retrouvé de plus ancienne tentatives, mais plus compatibles avec LibO). Pas vu d'extension non plus.
Cordialement,
Jean-Louis
Je n'ai pas réussi, dans la MFC Échelle de couleurs, même en utilisant formule en lieu et place de Min et de Max. La formule est là pour aller chercher des valeurs seuils ailleurs que dans la plage visée, mais ces seuils doivent être utilisés par rapport aux valeurs numériques de la plage visée, donc ça ne résout pas le problème.
On peut contourner en utilisant des styles, nommés 1 à 14 en utilisant les mêmes couleurs que dans la MFC Échelle de couleurs et en utilisant la formule de MFC suivante :
Code : Tout sélectionner
STYLE(GAUCHE(G6;TROUVE("(";G6)-1))
Code : Tout sélectionner
STYLE(E6)
Le wiki donne la méthode de calcul de cette échelle de couleur : il manque juste une fonction du style COLORIER (Cellule;R;V;B) et ça y a pas (j'ai retrouvé de plus ancienne tentatives, mais plus compatibles avec LibO). Pas vu d'extension non plus.
Cordialement,
Jean-Louis
Dernière modification par Jean-Louis Cadeillan le 13 mai 2020 23:47, modifié 1 fois.
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Bonjour à tous,
Une éventuelle solution dans le fichier joint : Le seul moyen que j'ai trouvé est de redonner à la cellule son caractère numérique pour que le formatage conditionnel s'applique, tout en conservant l'affichage souhaité en utilisant les formats personnalisés : Évidemment définir manuellement autant de format personnalisé que de valeur différentes contenues en colonne D est fastidieux et inenvisageable. Si l'idée est retenue, il faudra avoir recours à une macro pour automatiser la tâche et poursuivre en section macro comme le recommande les règles du forum.
A+
et le fichier pour tester :
Une éventuelle solution dans le fichier joint : Le seul moyen que j'ai trouvé est de redonner à la cellule son caractère numérique pour que le formatage conditionnel s'applique, tout en conservant l'affichage souhaité en utilisant les formats personnalisés : Évidemment définir manuellement autant de format personnalisé que de valeur différentes contenues en colonne D est fastidieux et inenvisageable. Si l'idée est retenue, il faudra avoir recours à une macro pour automatiser la tâche et poursuivre en section macro comme le recommande les règles du forum.
A+
et le fichier pour tester :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Merci OOotremer971,
cette solution me parait tout à fait viable, et répondre parfaitement au problème que je rencontre.
Je vais donc poster dans la section Macro pour développer celle ci.
Encore merci à tous les contributeurs qui se sont penchés sur cette question.
cette solution me parait tout à fait viable, et répondre parfaitement au problème que je rencontre.
Je vais donc poster dans la section Macro pour développer celle ci.
Encore merci à tous les contributeurs qui se sont penchés sur cette question.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- GourOOu
- Messages : 9629
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: MFC échelle de couleur depuis autres cellules
Dans ce cas, la présence d'une virgule précédant les parenthèses serait envisageable ? :OOotremer971 a écrit :Le seul moyen que j'ai trouvé est de redonner à la cellule son caractère numérique
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
A+
Effectivement ce serait bien d'avoir l'avis de l’intéressé cela permettrait de se passer de macro du coup.Jeff a écrit :Dans ce cas, la présence d'une virgule précédant les parenthèses serait envisageable ? :
A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Re,
Finalement Jeff c'est un chef (ça rime...) en poussant un peu son raisonnement, plus de virgule, pas besoin de macro juste une légère différence de rang de l'unité à la centaine avec une simple formule :
et un style personnalisé appliqué par formule avec la fonction STYLE() :
et le fichier pour tester :
A+
Finalement Jeff c'est un chef (ça rime...) en poussant un peu son raisonnement, plus de virgule, pas besoin de macro juste une légère différence de rang de l'unité à la centaine avec une simple formule :
Code : Tout sélectionner
=CNUM((C6*CHOISIR(NBCAR(D6)+1;0;10;100;1000))+D6&T(STYLE("Special")))
A+
Ajout : si la colonne D devait contenir des valeurs de l'ordre de l'unité ou de la centaine, il faudrait créer d'autres style perso pour adapter la position des parenthèses et utiliser la fonction CHOISIR() pour appliquer le bon |
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Terriblement efficace, et de plus, je n'ai pas à "réappliquer" une nouvelle MFC à chaque réactualisation.
Les valeurs d'une des colonnes sont des décimales, mais une simple formule arrondi permet de zapper le souci, car je n'ai pas besoin d'avoir une valeur précise.
Un immense merci à tous les contributeurs pour leur aide précieuse et leur imagination débordante!
Les valeurs d'une des colonnes sont des décimales, mais une simple formule arrondi permet de zapper le souci, car je n'ai pas besoin d'avoir une valeur précise.
Un immense merci à tous les contributeurs pour leur aide précieuse et leur imagination débordante!
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- GourOOu
- Messages : 9629
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: [Résolu] MFC échelle de couleur depuis autres cellules
Alors qu’avec OOotremer ça devient super (pour les rimes, je ne suis pas JJ Goldman, mais j’ai réussi à caser ça dans un alexandrin )OOotremer971 a écrit : Jeff c'est un chef
Chapeau
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: [Résolu] MFC échelle de couleur depuis autres cellules
bonjour à tous,
je reviens sur ce fil car en fait, la mise en forme ne réagit pas comme on pourrait l'espérer. Si on met des nombres qui comprennent soit moins soit plus de deux chiffres dans la colonne D, la formule et le style font en sorte de systématiquement affichés deux chiffres entre les parenthèses, ce qui n'a évidemment aucun sens puisque, pour se faire, soit le dernier chiffre de la colonne C est "prélevé" pour être mis entre les parenthèses, soit le premier chiffre de la colonne D est rajoutée au dernier de la colonne C.
Dans tous les cas, le résultat affiché en colonne H n'a plus ni queue ni tête..
Comme je ne comprends pas l'architecture et le fonctionnement du style "spécial", je suis incapable d'avancer seul pour résoudre ce souci.
Merci d'avance
je reviens sur ce fil car en fait, la mise en forme ne réagit pas comme on pourrait l'espérer. Si on met des nombres qui comprennent soit moins soit plus de deux chiffres dans la colonne D, la formule et le style font en sorte de systématiquement affichés deux chiffres entre les parenthèses, ce qui n'a évidemment aucun sens puisque, pour se faire, soit le dernier chiffre de la colonne C est "prélevé" pour être mis entre les parenthèses, soit le premier chiffre de la colonne D est rajoutée au dernier de la colonne C.
Dans tous les cas, le résultat affiché en colonne H n'a plus ni queue ni tête..
Comme je ne comprends pas l'architecture et le fonctionnement du style "spécial", je suis incapable d'avancer seul pour résoudre ce souci.
Merci d'avance
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: [Résolu] MFC échelle de couleur depuis autres cellules
Bonjour,
La solution fait appel à trois styles personnalisés pour gérer différemment le cas des unité, dizaine et centaine de la colonne D :
Special1 :
Special2 :
Special3 :
et une nouvelle formule pour sélectionner le bon style en rapport avec le nombre de caractère contenu colonne D :
Mais pour moi cette solution n'est pas réellement adaptée pour faire ressortir une échelle de couleur cohérente comme si elle avait été indexée sur les valeurs de la colonne C puisque ce sont les valeurs de la colonne D qui sont considérées pour la créer comme si elle n'avait pas de parenthèses. On peut donc se retrouver avec des écarts allant de la dizaine au dizaine de millier
A+
La solution fait appel à trois styles personnalisés pour gérer différemment le cas des unité, dizaine et centaine de la colonne D :
Special1 :
Code : Tout sélectionner
0(0)
Code : Tout sélectionner
0(00)
Code : Tout sélectionner
0(000)
Code : Tout sélectionner
=CNUM((C6*CHOISIR(NBCAR(D6)+1;1;10;100;1000))+D6&SI(NBCAR(D6)=1;T(STYLE("Special1"));SI(NBCAR(D6)=2;T(STYLE("Special2"));SI(NBCAR(D6)=3;T(STYLE("Special3"))))))
A+
Ajout : A mon avis la solution par macro est plus pertinente. |
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Merci OOotremeer j'ai bien conscience de te solliciter tant et plus.
Je te rejoins sur le fait que cette solution ne fournit plus une échelle de couleur pertinente et qu'il me faudrait donc insister sur la macro. Cela étant, la solution par macro présente d'autres inconvénients de mise en oeuvre.
Avant de gratter vers la macro, je voudrais finir de tenter de comprendre les différents éléments de cette solution et notamment cette histoire de format défini par l'utilisateur. Je n'arrive pas à comprendre ou ni comment leur donner un "nom" type spécial 1, spécial 2, etc.
Car, si l'échelle de couleur n'est plus pertinente, en revanche l'information présentée ainsi est très claire et parlante ainsi.
Merci d'avance.
Je te rejoins sur le fait que cette solution ne fournit plus une échelle de couleur pertinente et qu'il me faudrait donc insister sur la macro. Cela étant, la solution par macro présente d'autres inconvénients de mise en oeuvre.
Avant de gratter vers la macro, je voudrais finir de tenter de comprendre les différents éléments de cette solution et notamment cette histoire de format défini par l'utilisateur. Je n'arrive pas à comprendre ou ni comment leur donner un "nom" type spécial 1, spécial 2, etc.
Car, si l'échelle de couleur n'est plus pertinente, en revanche l'information présentée ainsi est très claire et parlante ainsi.
Merci d'avance.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Il faut afficher le volet latéral (Ctrl+F5) et cliquer sur la lettre A avec le pinceau pour ouvrir le styliste : clic droit au milieu du panneau puis==>Nouveau à partir de là tu peux nommer ton nouveau style et paramétrer tous les attributs qui t’intéressentshari a écrit :Je n'arrive pas à comprendre ou ni comment leur donner un "nom" type spécial 1, spécial 2, etc.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
bonjour à tous, je tente d'avancer à petit pas:
Le souci majeur de cette solution est qu'elle rend l'échelle de couleurs non pertinente en "bouleversant", les ordres de grandeurs. J'ai imaginé une solution qui rétablit ces ordres de grandeurs en multipliant les nombres de la colonne C par 1000 000. De cette manière l'addition des nombres de la colonne D ne vient plus modifier l'échelle de couleurs.
En compliquant un peu le problème, j'ai ajouté une troisième colonne de nombres, et les "intègre" dans mon résultat final en leur appliquant un facteur 1/10 ou 1/100 de manière à ce qu'ils apparaissent après la virgule.
L'idée est ensuite de créer un style qui m'affiche "proprement" le résultat du calcul.
Et c'est là ou j'en suis, je n'arrive pas à créer un style qui me ferait "disparaitre" les 0 en trop.
De même, je souhaiterais faire "disparaitre" la virgule dans la présentation du résultat.
Je cherche en vain sur le net, mais j'ai l'impression que ces styles personnalisés ne font pas recette, ou alors c'est moi qui ne sait pas bien chercher.
Le souci majeur de cette solution est qu'elle rend l'échelle de couleurs non pertinente en "bouleversant", les ordres de grandeurs. J'ai imaginé une solution qui rétablit ces ordres de grandeurs en multipliant les nombres de la colonne C par 1000 000. De cette manière l'addition des nombres de la colonne D ne vient plus modifier l'échelle de couleurs.
Code : Tout sélectionner
=CNUM((C6*1000000+D6)
Code : Tout sélectionner
=CNUM((C6*1000000+D6+E6*CHOISIR(NBCAR(E6)+1;0,1;0,1;0,01;0,001)))
Code : Tout sélectionner
=CNUM((C6*1000000+D6+E6*CHOISIR(NBCAR(E6)+1;0,1;0,1;0,01;0,001))&SI(NBCAR(E6)=2;T(STYLE("test2"));T(STYLE("test1"))))
De même, je souhaiterais faire "disparaitre" la virgule dans la présentation du résultat.
Je cherche en vain sur le net, mais j'ai l'impression que ces styles personnalisés ne font pas recette, ou alors c'est moi qui ne sait pas bien chercher.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
Tu montres un exemple du visuel attendu : est-ce que tu peux montrer celui attendu lorsqu'il y a des zéros et préciser si les deux colonnes de droite (D,E) peuvent contenir des valeurs de l'ordre de la dizaine dans les deux colonnes en même temps sur la même ligne ?
Merci
Tu montres un exemple du visuel attendu : est-ce que tu peux montrer celui attendu lorsqu'il y a des zéros et préciser si les deux colonnes de droite (D,E) peuvent contenir des valeurs de l'ordre de la dizaine dans les deux colonnes en même temps sur la même ligne ?
Merci
Ajout : Un dernier point à éclaircir, combien de valeur maximum ta colonne est susceptible de contenir ; j'ai peut-être une autre solution plus souple. |
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Bonsoir, j'ai rajouté le résultat attendu en cas de 0 dans la colonne E. Il ne peut pas y en avoir dans la colonne D.
On peut parfaitement avoir des nombres a deux chiffres dans la colonne E, et des nombres à 3 chiffres dans la colonne D. Et il est également possible que ces événements arrivent simultanément.
On peut parfaitement avoir des nombres a deux chiffres dans la colonne E, et des nombres à 3 chiffres dans la colonne D. Et il est également possible que ces événements arrivent simultanément.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
C'est pas le bon fichier
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Le voici, mais je ne comprends pas poruquoi l'autre n'est pas bon. J'avais gardé le même nom mais ajouté le visuel et modifié légèrement une ou deux choses.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
Cela ne m'a pas empêché d'avancer vers une solution qui respecte les ordres de grandeurs sur des cellule au format texte. J'ai créé une échelle de couleur graduée de 1 à 100 (que tu peux supprimer du fichier car elle ne sert plus à rien) à partir de laquelle j'ai créé une centaine de styles nommés shari_1,2,3 etc (par macro). A partir de là, on concatène les valeurs comme tu le faisais initialement et on applique un style basé sur le rang des valeurs de la colonne A (anciennement C). Je te laisse décortiquer :
Attention : il s'agit d'une formule matricielle. Il faut la valider en maintenant enfoncées les touches Ctrl+Maj lors de l"appui sur le touche Entrée. Pour recopier la formule vers le bas avec la poignée de recopie il faut aussi maintenir la touche Ctrl enfoncée.
A+
Effectivement, c'est moi qui déconne. J'ai vu le tableau du visuel attendu à moitié vide sans voir que tu avais ajouté une ligne avec zéro et des centaines en colonne D. Désolé.shari a écrit :mais je ne comprends pas poruquoi l'autre n'est pas bon. J'avais gardé le même nom mais ajouté le visuel et modifié légèrement une ou deux choses
Cela ne m'a pas empêché d'avancer vers une solution qui respecte les ordres de grandeurs sur des cellule au format texte. J'ai créé une échelle de couleur graduée de 1 à 100 (que tu peux supprimer du fichier car elle ne sert plus à rien) à partir de laquelle j'ai créé une centaine de styles nommés shari_1,2,3 etc (par macro). A partir de là, on concatène les valeurs comme tu le faisais initialement et on applique un style basé sur le rang des valeurs de la colonne A (anciennement C). Je te laisse décortiquer :
Code : Tout sélectionner
=A1&"("&B1&"--"&C1&")"&T(STYLE("shari_"&ENT(RANG(A1;$A$1:$A$14;1)*(100/MAX(RANG($A$1:$A$14;$A$1:$A$14;1))))))
A+
Ajout : Par contre la règle de calcul n'est pas bonne car elle est basée sur le rang des valeurs de la colonne A alors qu'elle devrait tenir compte du pourcentage d'écart entre deux valeurs. Je reviendrai dessus ce week-end. |
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Je m'incline! Terriblement ingénieux, et hyper efficace!
Un immense merci pour tout le travail, le suivi, la pédagogie et la patience.
J'espère pouvoir adapter tout ça sans trop de difficultés sur mon fichier principal. Après quelques essais infructueux, ça semble fonctionner correctement
Je craignais pour le "transfert" des styles, car vraiment ce langage macro sur LO est incompréhensible pour moi, mais le déplacement/copiage de la feuill1 résout le souci!
Encore bravo et surtout merci!
Nb: là, je m'arrache les cheveux avec des cellules "protégées" alors que j'ai tout déprotégé, que la feuille n'est plus protégée non plus, c'est à n'y rien comprendre, mais je vais fouiller, et éventuellement ouvrir un nouveau fil si besoin!
Un immense merci pour tout le travail, le suivi, la pédagogie et la patience.
J'espère pouvoir adapter tout ça sans trop de difficultés sur mon fichier principal. Après quelques essais infructueux, ça semble fonctionner correctement
Je craignais pour le "transfert" des styles, car vraiment ce langage macro sur LO est incompréhensible pour moi, mais le déplacement/copiage de la feuill1 résout le souci!
Encore bravo et surtout merci!
Nb: là, je m'arrache les cheveux avec des cellules "protégées" alors que j'ai tout déprotégé, que la feuille n'est plus protégée non plus, c'est à n'y rien comprendre, mais je vais fouiller, et éventuellement ouvrir un nouveau fil si besoin!
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: MFC échelle de couleur depuis autres cellules
Bonjour,
Je crois que j'ai enfin trouvé une logique qui fonctionne avec précision. Ci dessous le formatage obtenu par formatage conditionnel (colonne A) et celui obtenu par formule (colonne B). Je ne parviens pas à voir la différence : Encore une fois je te laisse décortiquer. La formule gère d'une façon les valeurs supérieures ou égales à la moyenne des valeurs de la colonne A puisque c'est elle qui fixe la couleur jaune :
et d'une autre celles qui sont inférieures :
les séquences :
et
renvoient une valeur booléenne 1 ou 0 qui évite l'imbrication de SI() pour traiter de part et d'autre de la moyenne.
A+
Je crois que j'ai enfin trouvé une logique qui fonctionne avec précision. Ci dessous le formatage obtenu par formatage conditionnel (colonne A) et celui obtenu par formule (colonne B). Je ne parviens pas à voir la différence : Encore une fois je te laisse décortiquer. La formule gère d'une façon les valeurs supérieures ou égales à la moyenne des valeurs de la colonne A puisque c'est elle qui fixe la couleur jaune :
Code : Tout sélectionner
(100-((MAX($A$1:$A$14)-A1)*(50/(MAX($A$1:$A$14)-MOYENNE($A$1:$A$14))))))
Code : Tout sélectionner
(1+(A1-MIN($A$1:$A$14))*(50/(MOYENNE($A$1:$A$14)-MIN($A$1:$A$14)))))
Code : Tout sélectionner
(A1>=MOYENNE($A$1:$A$14))*
Code : Tout sélectionner
(A1<MOYENNE($A$1:$A$14))*
Code : Tout sélectionner
=A1&"("&B1&"--"&C1&")"&T(STYLE("shari_"&ARRONDI((A1>=MOYENNE($A$1:$A$14))*(100-((MAX($A$1:$A$14)-A1)*(50/(MAX($A$1:$A$14)-MOYENNE($A$1:$A$14))))))+ARRONDI((A1<MOYENNE($A$1:$A$14))*(1+(A1-MIN($A$1:$A$14))*(50/(MOYENNE($A$1:$A$14)-MIN($A$1:$A$14)))))))
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- Membre lOOyal
- Messages : 35
- Inscription : 17 janv. 2020 10:28
Re: MFC échelle de couleur depuis autres cellules
Tu m'as fait épuisé mon stock de superlatifs!
Bon, effectivement, en comparant les styles obtenus par l'une ou l'autre des deux formules, on constate que la toute dernière mouture "colle" plus à l'échelle MFC et surtout qu'elle est plus équilibrée, notamment dans sa gestion des valeurs identiques.
Je suis donc plus que satisfait du résultat obtenu et peux classer en "Résolu" ce sujet.
Encore une fois, un immense merci pour la qualité du travail et bravo pour les trésors d'ingéniosité déployés!
Bon, effectivement, en comparant les styles obtenus par l'une ou l'autre des deux formules, on constate que la toute dernière mouture "colle" plus à l'échelle MFC et surtout qu'elle est plus équilibrée, notamment dans sa gestion des valeurs identiques.
Je suis donc plus que satisfait du résultat obtenu et peux classer en "Résolu" ce sujet.
Encore une fois, un immense merci pour la qualité du travail et bravo pour les trésors d'ingéniosité déployés!
AOO417m1(Build:9800) - Rev. 46059c9192 Windows 10
Libreoffice 6.4.2.2 (x64)
Libreoffice 6.4.2.2 (x64)