[Excel] couleurs cellules

Résolu/Fermé
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 - 31 juil. 2012 à 08:09
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 - 6 août 2012 à 08:17
Bonjour tout le monde,
Ma question est surement très simple pour les gens qui savent:
je suis sur une feuille Excel et losque je clique la cellule doit changer de couleur. jusque là, j'y arrive. Maintenant j'ai une contrainte de plus (et je ne sais pas si c'est possible..). Sur les trois premières lignes les cellules peuvent prendre trois couleurs, sur les deux suivantes les cellules sont vertes, et sur les deux suivantes sont bleues, les deux suivantes vertes, puis bleues..
je vous envoie un exemple en parrallèle.(j'espère que l'exemple suivant va vous parler car je ne sais pas comment le modéliser sur un exemple simple sur feuille Excel)
quand je clique sur une cellule de la ligne 4 ou 5 ou8 ou9 colonne 3, ma cellule doit devenir verte et la cellule de le colonne 3 mais de la ligne 2 doit aussi devenir verte (exemple).
Si maintenant je clique sur la colonne 3 ligne 6 ou7 ou 10 ou 11, la cellule 2 de la colonne 3 doit devenir bleue.
Si je clique directement sur la cellule de la colonne 3 ligne 2 elle doit devenir rouge.

je vous remercie par avance.
Pompom 09

22 réponses

pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
31 juil. 2012 à 08:36
j'ai oublié de préciser qu'une cellule ne peut pas avoir deux couleurs différentes en meme temps
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
31 juil. 2012 à 11:29
personne n'aurait une idée à me proposer svp??
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
31 juil. 2012 à 17:30
bonjour

peux tu envoyer une partie significative, avec quelques précisions, de ton fichier au format excel 2003 sur cjoint.com et joindre le lien obtenu à ton prochain message

bonne suite
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 08:27
Bonjour,

https://www.cjoint.com/?BHbiz7K2Eos

J'ai essayé de réaliser un exemple qui pouvait m'aider à réaliser mon programme.
Pour les trois projets: les sous projets 1 et 2 sont toujours réalisés dans les bureaux, et les sous projets 3 et 4 sont toujours réalisés dans un atelier.
Mon but est que quand je clique dans la cellule C8 (ou C9 ou F15) par exemple elle devienne verte (quand je clique sur une cellule dont le sous projet est réalisé au bureau elle devient verte), quand je clique sur une cellule qui se réfère à un sous projet se rélisant à l'atelier ma cellule devienne bleu (ex: cellule C22 ou E17..). J'arrive À avoir les lignes en vert mais je n'arrive pas à trouver un algorithme qui me permette d'avoir aussi les bleues.
Et là où je deviens encore plus perdue, c'est lorsque qu'on me demande: Pierre entre son nom dans la cellule C8, celle ci devient verte, mais la C2 devient aussi verte, s'il entre son nom en D10 celle ci devient bleu mais la cellule D2 doit aussi le devenir. Bref, il y a deux problèmes et je ne sais pas du tout par quoi commencer.
En ce qui concerne le rouge, c'est lorsqu'on clique directement sur la cellule C2 ou F4 ..(dans la ligne correspondant à une personne) que celle ci doit devenir rouge.

Merci à vous de consacrer de votre temps libre pour moi.
0

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

Posez votre question
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 09:51
bonjour

il va y avoir quelques points à éclaircir, on commence par ces deux là
Q1. Mon but est que quand je clique dans la cellule C8 (ou C9 ou F15) par exemple elle devienne verte ..... Pierre entre son nom dans la cellule C8, celle ci devient verte
Est ce que ces cellules doivent devenir vertes quand on clique dessus OU BIEN quand on y met un nom dedans?
Q2. Pierre entre son nom dans la cellule C8, celle ci devient verte, mais la C2 devient aussi verte
Est ce que C2 DOIT aussi devenir verte?
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 10:03
En fait, je veux avoir un apercu de l activite de Pierre (sur quel sous projet il travaille et savoir s'il est au bureau ou dans l'atelier). Pour cela Pierre clique dans la cellule correspondant à ce qu'il va faire (par exemple: il travaille sur le sous projet 1 du projet 1, donc pierre clique sur la cellule C8, elle devient verte, puis entre son prénom dans la cellule C8 et la cellule C2 doit à ce moment devenir verte À son tour). Si Pierre avait cliqué sur la cellule C10, celle ci serait devenue bleue, il aurait ensuite entré son prénom dans la cellule C10 et la cellule C2 aurait due à ce moment devenir bleue également.
Si je me suis mal exprimée, n'hésitez pas à me faire reformuler
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 10:51
je pense qu'il va falloir passer par des macros

un début de commencement de réponse
https://www.cjoint.com/?0HbkWS757Et

à l'ouverture du fichier, accepter l'exécution des macros
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 11:13
quand j'ouvre votre fichier tout va bien, je peux voir que ca fonctionne (à quelques modifications près) mais j'ai copié le code et maintenant j'ai l'erreur 1004 qui me dit que la méthode Range pour l'objet '_Worksheet' a échoué. Est ce le fait que je copie le code, ou dois je modifier quelque chose?
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 11:17
et une deuxième petite question, ou avez vous créez le bouton et entrez les noms? svp
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
Modifié par ccm81 le 1/08/2012 à 11:21
comme je te l'ai précisé, ce n'était qu'un début et que ça fonctionne ne m'étonne pas MAIS est ce que MON ficher correspond (en gros/ en partie) à ta demande

si oui, je t'enverrai quelques explications et d'autres questions ....
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 11:28
oui c'est totalement ce que j'attendais, un grand merci pour ce début de réponse!!!
la simple chose à modifier que j'ai vu en regardant, c'est lorsqu'on choisit Pierre par exemple, il ne faut pas colorer la case où Pierre est écrit, mais la case de la colonne où on vient d'écrire Pierre et au niveau de la ligne de pierre (ex C2 si Pierre est entré en C8 et non A2 si Pierre est entré en C8) et si c'est possible, quand on clique à nouveau sur la case C8 par exemple, j'ai vu qu'elle redevenait blanche, c'est nickel mais est ce que la la C2 peut aussi redevenir blanche en meme temps??

Encore merci, surtout pour les plages, j'ai cherché un peu partout et je n'avais rien trouvé dessus!
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
Modifié par ccm81 le 1/08/2012 à 12:00
est ce que ça évolue dans le bon sens?
https://www.cjoint.com/?0Hbl5yyCwWe

la RAZ n'est faite que pour le Bureau

et que devient le rouge?

Encore merci, surtout pour les plages, j'ai cherché un peu partout et je n'avais rien trouvé dessus!
donc tu as vu et compris comment sont nommées les plages
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 12:09
en ce qui concerne le rouge, la personne signifie qu'elle n'est pas la ce jour la pour s'occuper d'un sous projet. Donc elle clique directement a la date ou elle n est pas la et la case reste rouge.
dans la nouveau code, je ne comprends pas ce que sont "lideb" et "codeb"?! pouvez vous m expliquer svp ou est ce juste provisoire?

pour les plages, j'ai une question, vous définissez P1B, P2B.. mais comment l'ordinateur sait que P1B correspond aux lignes 8 et 9 par exemple?
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 12:13
le devoir m'appelle, je reprendrai plus tard

bon appétit
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 12:14
merci à plus tard, et encore merci.
bon appétit
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 14:07
J'ai entre temps une autre contrainte qui s'est ajoutée.. :/ je pensais que l'on pouvait l'introduire dans ce code, mais visiblement soit c'est impossible, soit je n'ai pas la bonne méthode(le plus probable!).

jusqu'à maintenant: Pierre cliquait sur C8 la case se colorait en vert, puis Pierre entrait son prénom et la case C2 se colorait en vert. Maintenant on veut que quand Pierre entre son nom, C2 se colore en vert, mais aussi que dans B8 (plus précisément la case juste à droite du sous projet sur lequel la personne travaille,ici B8) s'inscrive Pierre.

J'ai essayé d'introduire cette contrainte dans Private Sub Worksheet_Change(Byval As Range) dans la boucle If OK Then End If, mais visiblement cela ne peut pas fonctionner..
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 13:58
j'ai un peu arrangé le code et ajouté quelques explications (notamment sur le noms de plages)
https://www.cjoint.com/?0Hbn26rS9Vl
pour le moment, il vaut mieux discuter uniquement sur mon fichier, on verra plus tard pour passer dans la vraie vie

bonne suite
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 14:14
Attention, je crois que j'ai oublié de préciser que l'excel de mon travail est allemand (celui sur lequel je suis actuellement et sur lequel le programme va fonctionner), donc je dois traduire les formules entrées!
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 14:24
est ce la réponse à ton post #17?
https://www.cjoint.com/?0HboxkCkCL8

pour ce qui est de la traduction en allemand, je ne peux pas faire grand chose ...
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 14:28
exactement la bonne réponse :) vous etes génial!! :)

la traduction, je la ferai moi meme sans soucis, mais depuis tout à l'heure je cherche Insertion/Nom/Definir : je travaille sur un excel 2007, est ce que la disposition a changé entre 2003 et 2007?
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 14:30
peut être ça, mais je ne suis pas sûr
Onglet Formule>Gestionnaire de nom>Définir un nom
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 14:42
c'est bon je viens de trouver :) en une demie heure vous avez réglez le pb que j'essaie de résoudre depuis lundi.. Il me reste bcp à apprendre !! mille merci!!

une dernière petite chose, Pierre ne peut pas s'inscrire le meme jour sur deux sous-projets différents, qu'est ce qu'il vaut mieux faire?! mieux vaut il créer un bouton qui rappelle qu'on ne peut pas s'inscrire deux fois, ou on ignore quand la personne veut s'inscrire la deuxième fois (j'entends par la, la personne à beau cliquer, le prénom ne s'inscrira pas)
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
Modifié par ccm81 le 1/08/2012 à 18:36
une tentative (laborieuse) pour proposer des listes déroulantes dynamiques
https://www.cjoint.com/?0HbsEYa6iyU

pas sur que ça ne bugge pas

bonne suite
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 19:10
ok, je me suis mise à adapter votre programme au mien, mais comment avez vous défini liste nom?
votre exemple à l'air de fonctionner, en revanche je n'ai pas essayé avec d'autres exemples (je n'ai aucune idée de comment vous avez pu enlever le nom dont la case est rouge), j'allais commencer à créer un message d'erreur mais votre idée est meilleure mais plus complexe..
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
1 août 2012 à 19:22
c'est la procedure MAJLnoms qui se charge du travail
cette procedure est appelée par Worksheet_SelectionChange(ByVal Target As Range) à chaque sélection d'une cellule
"listenoms" contient les noms de "basenoms" qui ne figurent pas et qui ne sont pas rouges dans la colonne cliquée

Attention
la liste des noms de la feuille Tabelle1 a été renommée "basenoms"
la liste "listenoms" est maintenant dans la feuille "liste noms", c'est elle qui va figurer dans la liste de validation

tout ça est à tester sérieusement bien sûr

bon courage
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
1 août 2012 à 19:33
je vous remercie bcp à moi de jouer maintenant, je vous tiens au courant, et j'espère ne pas avoir plus de questions!

je vous remercie bcp pour votre aide!
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
Modifié par pompom09 le 2/08/2012 à 11:35
Bonjour ccm81,

Je crois que j'ai un petit problème avec la liste déroulante.. Quand je clique sur une cellule, la cellule change de couleur mais il n'y a pas la liste déroulante des noms qui s'affiche, du coup je ne peux pas inscrire de noms, ni savoir si tout fonctionne comme je le voudrais. Pourriez-vous svp m'expliquer où dans le code, ou quelle formule je peux ajouter pour avoir ma liste déroulante?

Merci par avance.
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
2 août 2012 à 11:42
Je m'excuse pour ce commentaire inutile j'ai trouvé très vite l'erreur qui était une erreur de compilation (oubli de traduction d'une variable), en revanche un autre pb j'ai un décalage lorsque j'entre pierre, pierre s#inscrit dans la bonne case mais la couleur ne s'inscrit pas en C2 mais C4..
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
Modifié par pompom09 le 2/08/2012 à 11:53
trouvé aussi, maintenant en testant pb avec: lorsque Pierre s'inscrit sur sous projet 1 du projet 1, il peut encore s'inscrire où il veut le meme jour et cela change la couleur de sa case en haut, donc la liste déroulante dynamique ne fonctionne pas.. je continue de chercher, ceci est sans doute du au fait que la liste déroulante ne s'affiche jamais.
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
2 août 2012 à 14:22
question bête : est ce que tu as affecté la liste "listenoms" à toutes les cellules des sous-projets (Données:Validations/autoriser liste et = listenoms
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
2 août 2012 à 14:28
question pas bête justement.... ^^
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
2 août 2012 à 14:45
par contre tu le trouves où car je suis en train de faire toute les parties et je ne trouve pas :/
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
2 août 2012 à 15:02
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
2 août 2012 à 15:24
merci encore, maintenant cela fonctionne à merveille!! grace à vous j'ai appris beaucoup de choses sur VBA et j'espère ne pas les oublier!
juste quelques petits détails à régler mais pas sur cette partie.
encore merci ccm81:)
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
2 août 2012 à 15:41
de rien,

bon courage pour la suite
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
3 août 2012 à 16:28
HELP ccm81 !!!

Je vais poser la question, meme si elle va paraitre trop compliquée à comprendre sans exemple peut etre. Mais dans le désespoir, je tente.
Je n'ai pas changé votre code, tout marchait jusqu'à que je change le format de la date. Maintenant, je clique sur la cellule C8, elle devient verte je sélectionne Pierre, mais la cellule C2 ne rágit pas :( elle ne devient plus verte.

A force de tests je me suis rendue compte que je double clique la cellule est donc blanche, je sélectionne le prénom Pierre puis je reclique sur cette meme cellule (toujours C8) qui devient verte et cette fois C2 redevient verte aussi.
Qu'esz ce qu'il se passe dans mon code pour que ca s inverse :(
merci de votre réponse par avance.
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
3 août 2012 à 16:35
et bien sur la remise a zero ne se fait plus non plus..

une chose à ajouter entre temps jai tente de changer: Private Sub Worksheet_SelectionChange(ByVal Target As Range) par Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Range), mais le problème y était déjà
0
pompom09 Messages postés 55 Date d'inscription lundi 30 juillet 2012 Statut Membre Dernière intervention 13 août 2012 1
3 août 2012 à 17:03
J'ai tout repris à réro, donc celà refonctionne.
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
3 août 2012 à 18:22
je ne vois pas bien pourquoi le changement de format de la date change quelque chose, à moins que ...tu n'aies aussi changé le type (texte par exemple au lieu de nombre). Pour parer à toute éventualité, dans les noms de plage changer la définition de listedates par
=DECALER(Tabelle1!$C$1;0;0;1;NBVAL(Tabelle1!$C$1:$Z$1))

pour les clic/double clic, je ne comprends pas bien
0