[Résolu] Couleur de cellule en fonction de recherche INDEX

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

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.
Guib974
Fraîchement OOthentifié
Messages : 3
Inscription : 27 févr. 2018 09:34

[Résolu] Couleur de cellule en fonction de recherche INDEX

Message par Guib974 »

Bonjour à tous,

Je me tourne vers vous car je souhaite appliquer une couleur, dans une cellule contenant une fonction INDEX de recherche avec deux entrées. Il faudrait que la fameuse cellule m'affiche la même couleur de fond, que celle de la cellule source trouvée par INDEX... (cf. fichier joint)
Question forum openoffice .ods
Je ne sais absolument pas si je peux le faire par une fonction supplémentaire dans la cellule cible (mais je crois que l'on ne peut pas mettre plus d'une fonction/cellule?!)
ou si je dois passer par formatage conditionnel... ou si c'est tout simplement impossible ??!

Merci à toutes celles et tous ceux qui prendront le temps de se pencher sur mon problème!

Merci à ce forum qui m'a déjà permis de pas trop mal progresser dans CALC...
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Open Office 4.1.3
macOS High Sierra 10.13.3
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par OOotremer971 »

Bonjour,
Guib974 a écrit :Il faudrait que la fameuse cellule m'affiche la même couleur de fond, que celle de la cellule source trouvée par INDEX... (cf. fichier joint)
Il n'existe pas à ce jour de fonction native permettant d'extraire la couleur de fond ou le style appliqué à une cellule. Il faut passer par une macro.
Guib974 a écrit :Je ne sais absolument pas si je peux le faire par une fonction supplémentaire dans la cellule cible
C'est faisable avec la fonction ACTUELLE() et la STYLE(). Tu ne récupéreras pas directement la couleur de la cellule obtenue avec ta fonction INDEX() mais tu appliqueras un style particulier à ta cellule en fonction de certains critères.
Si B2 = EST et que la valeur trouvée par INDEX est supérieure ou égale à 0.34
OU
Si B2 = OUEST est la valeur trouvée par INDEX est supérieure ou égale à 0.26
on applique le style orange sinon le style vert.
Guib974 a écrit :(mais je crois que l'on ne peut pas mettre plus d'une fonction/cellule?!)
Faux, le caractère & (esperluette) permet l'utilisation de plusieurs formules dans la même cellule :

Code : Tout sélectionner

=INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))&SI(OU(ET(B2="OUEST";ACTUELLE()>=0,26);ET(B2="EST";ACTUELLE()>=0,34));T(STYLE("orange"));T(STYLE("Vert")))
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
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9256
Inscription : 28 août 2010 08:45

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par micmac »

Bonjour et bienvenue sur le forum,
votre signature a écrit : Open Office 4.1.3
macOS High Sierra 10.13.3
Votre signature indique une version de OpenOffice qui n'est plus maintenue.
Est-ce une une erreur, un oubli, un choix, une obligation ?
Dans ce dernier cas, mentionnez-le dans votre signature par "Obligation de version".

Pour connaître la version que vous possédez : https://forum.openoffice.org/fr/forum/v ... 582#p11582

Il est fortement recommandé d'être à jour de la dernière version : Soyez à jour de la dernière version

Dans votre signature il est nécessaire d'indiquer :
1- La version exacte de AOO ou LibO (AOO 4.1.5, LibO 5.4.5 par exemple) ;
2- La version exacte du système d'exploitation (Windows XP SP3, Vista SP2, Windows 7 SP1, Win 8.1, Win 10, Ubuntu 17.04, MacOS 10.13.3, par exemple).
Accès direct à votre signature pour la corriger.

Cordialement.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16960
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par jeanmimi »

Bonjour,
Autre possibilité,
Après avoir créé les Styles et les avoir nommés, le Formatage conditionnel est possible avec une formule combinant les conditions de la cellule B2 et de la cellule D5 de la Feuille RESULTAT.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Guib974
Fraîchement OOthentifié
Messages : 3
Inscription : 27 févr. 2018 09:34

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par Guib974 »

Merci à tous pour vos retours, je sens qu'on chauffe mais malheureusement c'est pas encore bon...

@Oootremer971

Dans la solution que vous me proposez (très prometteuse) j'obtiens NORD ou SUD en vert et OUEST ou EST en orange sans tenir compte des impératifs que vous avez spécifié et qui sont ceux a appliquer:

Est >= 0,31 en orange (et donc < 0,31 en vert)
Ouest >= 0,26 en orange (et donc < 0,26 en vert)

Pour EST et OUEST qu'elle que soit la valeur qui est indiqué, 0,10 par exemple la cellule reste orange...

@Micmac

Effectivement ma version n'est pas la dernière, j'ai téléchargé la MAJ (4.1.5) et tenté de l'installer mais quand j'ouvre Open Office il m'indique que j'ai toujours la même version (4.1.3) j'ai refais la manip deux fois et ca ne marche toujours... pas du coup j'ai laissé tomber, car j'ai pas le temps pour me prendre la tête en plus avec une MAJ et je ne pense que ce soit justement grâce à ça que j'aurais enfin ma bonne formule! Je réessaierais plus tard.

@JEANMIMI

Dans la solution que vous me proposez, la couleur apparait pour Nord et Sud mais pas pour Est et Ouest. Du coup je suis allé voir Formatage conditionnel et j'ai compris que je devais compléter pour les 2 autres mais au premier coup d'essai je n'avais toujours pas de couleur... Je suis retourné dans FC et j'ai compris que vous aviez indiqué le style vert pour Nord et Sud que quand je remplace le style vert par orange la cellule devient orange pour NORD ou SUD. Du coup, j'ai compris qu'avec votre formule, la couleur de la cellule tenez compte du style indiqué dans FC mais pas de celle du tableau notamment quand il y avait un changement de couleur pour une même orientation (cas de EST ou OUEST).

Donc je suis toujours au même point... :? grâce à vos deux formules, je tente des choses mais toujours sans résultat!
Open Office 4.1.3
macOS High Sierra 10.13.3
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16960
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par jeanmimi »

Guib974 a écrit :la couleur de la cellule tenez compte du style indiqué dans FC mais pas de celle du tableau notamment quand il y avait un changement de couleur pour une même orientation (cas de EST ou OUEST).
C'est exact, j'avais commencé le travail de paramétrage en vous laissant le soin de continuer ... jusqu'à ce que je me rende compte que je n'étais pas sûr que les 5 ou 6 conditions nécessaires puissent être gérées par votre programme.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par OOotremer971 »

Guib974 a écrit :@Oootremer971

Dans la solution que vous me proposez (très prometteuse) j'obtiens NORD ou SUD en vert et OUEST ou EST en orange sans tenir compte des impératifs que vous avez spécifié et qui sont ceux a appliquer:
Apparemment il y a un souci avec la fonction ACTUELLE() car si je la remplace par la formule initiale :

Code : Tout sélectionner

INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))
cela fonctionne parfaitement, au détriment d'une lecture un peu moins digeste :

Code : Tout sélectionner

=INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))&SI(OU(ET(INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))>=0,26;B2="OUEST");ET(INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))>=0,31;B2="EST"));T(STYLE("orange"));T(STYLE("vert")))
que l'on peut améliorer en utilisant une formule nommée (menu Insertion>Nom>Définir ou Ctrl+F3), voir cellule F5

Code : Tout sélectionner

=OOo971&SI(OU(ET(OOo971>=0,26;B2="OUEST");ET(OOo971>=0,31;B2="EST"));T(STYLE("orange"));T(STYLE("vert")))
Désolé pour le retour tardif...géolocalisation oblige :)

@+
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
Guib974
Fraîchement OOthentifié
Messages : 3
Inscription : 27 févr. 2018 09:34

Re: Couleur d'une cellule en fonction d'une recherche INDEX

Message par Guib974 »

Bonjour Messieurs,

Merci pour vos retours

@Jeanmimi: et oui effectivement il y a aussi le problème du nombre de condition que je spécifier. Il semblerait que je doive passer par de la macro pour travailler en formatage conditionnel pour ce travail en suivant votre procédure... Mais merci quand même!

@Oootremer971: Oui c'est excellent votre formule fonctionne à merveille et j'essaie à présent de bien la comprendre pour pouvoir la réutiliser dans le futur... Effectivement, votre seconde formule est bien moins longue à rédiger et j'ai pu la retrouver dans les fonctions. Donc si j'ai bien compris, "Ooo971" (outre une référence a votre pseudo) est une sorte de raccourci pour appeler la formule initiale: INDEX(Feuil1.A2:M6;EQUIV(B2;Feuil1.A2:A6;0);EQUIV(B5;Feuil1.A2:M2;0))?!

Pas de souci Oootremer971 pour le décalage dû a votre localisation en Guadeloupe. Moi-même vous l'aurez sans doute compris, j'habite à la Réunion... Entre nous, il y un décalage horaire d'environ 11h si je ne me trompe pas!! :)


Merci encore infiniment à vous 2 pour m'avoir aidé à résoudre mon problème.

PS: J'ai bien compris que l'éthique à avoir vis à vis du site n'est pas de venir exclusivement chercher des solutions mais aussi, de se pencher sur les problèmes d'autres utilisateurs et tenter de leur apporter des solutions (et c'est bien normal), mais je me dis qu'il y a quand même un monde qui nous sépare, quand je vois ce que vous arrivez à faire avec cet excellent logiciel et ce que moi j'arrive à en faire...!!! :shock: :D
Open Office 4.1.3
macOS High Sierra 10.13.3