Changer les couleurs de cellules
Bonjour à vous tous.
Je suis un débutant et j'aimerai pouvoir changer la couleur d'une ou plusieurs cellules en cliquant simplement sur une autre cellule.
Par exemple, dans l'image si dessous, en haut mes différents choix de couleur. J'aimerai donc, sélectionner les cases A10, B16 et mettre un fond bleu à l'intérieur en cliquant sur D2.
Le fichier sera par la suite transféré dans Sharepoint à mon travail et du coup je ne peux pas créer de bouton avec macro. Sharepoint les supprime.
Si quelqu'un peut m'aider ce serai cool, de mon côté je continue à chercher.
Bonsoir Eluriand, le forum,
Un essai....
Clique sur l'un de tes 4 "boutons" et sélectionne ta(tes)cellule(s)...
La prochaine fois, pense à joindre un fichier plutôt qu'une image,
Cordialement,
Bonjour à tous,
Une solution par procédure événementielle et variable publique à adapter à votre fichier ne l'ayant à disposition :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Application.Union([B2], [D2], [F2], [H2])) Is Nothing Then Range(REF.Address).Interior.Color = Target.Interior.Color
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, [A7:H18]) Is Nothing Then Set REF = Selection
End SubCdlt,
Merci xorsankukai mais ce n'est pas tout à fait cela. Je souhaite sélectionner les cases à changer et ensuite seulement cliquer sur la couleur à y déposer.
Merci Ergotamine, mais comme expliqué, je suis débutant et là tu m'as perdu au 4ème mot. Avant lui, j'ai tout compris
Je m'excuse pour la photo et vous place un fichier à la place.
Ce tableau est un exemple. Je ne peux pas diffuser le vrai tableau car il renferme des données sensibles.
Le clic droit pour changer les couleurs simplifient tout, si ce n'est que chacun dépose la couleur qui lui plaît. Au final on n'y comprend plus rien. D'où l'idée de proposer les changements sur la couleur correspondant au statut actuel de la tâche.
Bonjour,
Mais quel est votre besoin exact au final ?
Car si l'utilisateur doit renseigner son choix dans les lignes du tableau alors une simple mise en forme conditionnelle (MEFC) suffirait .. Il serait pertinent de connaître la méthode d'utilisation de ce tableur. Je vous joint un exemple par MEFC. Si vous inscrivez un choix ou le modifiez dans une des cellules du tableau, la couleur s'adapte au contenu.
Avez-vous testé le fichier que je vous ai joint dans mon premier post ? Via le code généré, vous sélectionnez votre plage puis cliquez droit sur le bouton de votre choix et la couleur s'applique.
Cdlt,
Voici un résumé du tableau, à savoir que le nombre de ligne n'est pas fixe.
Son fonctionnement: nous sommes plusieurs services à intervenir dessus. Le 1er fixe des dates pour effectuer les modifications sur avion, planifie les tâches. Le second créé les demandes d'approvisionnement pour réaliser c'est tâche.
Comme tout n'est pas figée dans le temps, il arrive régulièrement qu'une demande soit créée mais que la date soit décalée soit avant, soit après. Dans ce cas là, l'intervenant sélectionne les cellules concernant les modifs et clique sur la cellule "Changement de date" pour basculer la couleur en bleue.
Lorsqu'une nouvelle modif est lancée, l'intervenant créé la ligne et sélectionne l'(es) avion(s) concerné(s) puis clique sur "Demande à créer" pour y afficher la couleur. Suite à ça, le second intervenant, lorsqu'il ouvre le fichier repère immédiatement ce qu'il a à faire. Une fois la(es) demande(s) créé(s), il sélectionne la(es) cellule(s) concernée(s) et clique sur "Demande créée".
Voilà en gros le fonctionnement du futur fichier. Le fait de mettre les cases couleurs en haut permet de normaliser le tout et "d'imposer" les couleurs.
J'ai pu testé le fichier que vous avez joint mais rien ne se passe. Sûrement moi qui ne fait pas ce qu'il faut.
Edit:
Après relecture de votre message j'ai pu voir l'information "clic droit". Possible de faire pareil mais avec clic gauche?
Bonjour,
C'est beaucoup plus compréhensible avec cet exemple en effet merci. Donc la MEFC ne s'appliquera pas sous ce format là. J'ai modifié un peu le code, il s'active désormais avec un double clic :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Application.Union([B2], [D2], [F2], [H2])) Is Nothing Then Range(REF.Address).Interior.Color = Target.Interior.Color
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim LR%, LC%
LR = ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
LC = ActiveSheet.Cells(6, ActiveSheet.Columns.Count).End(xlToLeft).Column
If Not Application.Intersect(Target, Range(Cells(7, 1), Cells(LR, LC))) Is Nothing Then Set REF = Selection
End SubDonc vous sélectionnez la ou les cellules d'intérêts puis double cliquez gauche sur le type de modification à réaliser en ligne 2. Les cellules sélectionnées se colorent alors de la même couleur que celle sur laquelle vous venez de double cliquer.
Dans l'attente de votre retour.
Cdlt,
Un grand merci Ergotamine, cela me vas parfaitement. Reste à transposer le tout dans le fichier officiel.