Colorer une cellule de la couleur indiquée dans une autre
Southkenny
Messages postés
39
Statut
Membre
-
Southkenny Messages postés 39 Statut Membre -
Southkenny Messages postés 39 Statut Membre -
Bonjour,
je voudrais savoir s'il est possible (et si oui comment) colorer le fond d'une cellule A1 de la couleur RGB indiquée en cellule A2, sans passer par une macro.
Exemple : cellule A1 sur fond rouge correspondant à un FF0000 écrit en cellule A2.
L'idée générale serait à terme de pouvoir paramétrer des groupes de couleurs de mon Excel suivant un onglet de param (qui contient déjà des variables pour des calculs sur les autres onglets).
Merci par avance
je voudrais savoir s'il est possible (et si oui comment) colorer le fond d'une cellule A1 de la couleur RGB indiquée en cellule A2, sans passer par une macro.
Exemple : cellule A1 sur fond rouge correspondant à un FF0000 écrit en cellule A2.
L'idée générale serait à terme de pouvoir paramétrer des groupes de couleurs de mon Excel suivant un onglet de param (qui contient déjà des variables pour des calculs sur les autres onglets).
Merci par avance
A voir également:
- Colorer une cellule en fonction de la couleur d'une autre cellule
- Excel cellule couleur si condition texte - Guide
- Excel remplir automatiquement une cellule en fonction d'une autre ✓ - Forum Excel
- Aller à la ligne dans une cellule excel - Guide
- Bloquer une cellule excel - Guide
- Excel somme si couleur cellule - Guide
6 réponses
Il suffit d'utiliser la Mise en forme conditionnelle.
Southkenny
Messages postés
39
Statut
Membre
A moins de limiter le panel de couleur et en faisant des tests comparatifs de chaines de caractère, c'est possible, sur un nombre limité de couleur, mais avec 256³ possibilités, c'est trop limitatif. Je cherche une autre solution.
Bonjour,
Il existe une petite icône en forme de petit pinceau jaune intitulé (Format painter sur la version anglaise).
Ce petit pinceau magique permet de faire un copier coller du format d'une cellule (Bordure, couleur, format de cellules, taille de caractère, etc...)
Il suffit de ce mettre sur une cellule ou un champs de plusieurs cellules.
Cliquez sur ce pinceau.
Cliquez à l'endroit ou vous voulez reproduire la mise en forme.
D
euxième manière de procéder
Position sur la cellule à reproduire.
Ctrl + C
Positionement sur la cellule de destination Collage Spéciale puis Format
Il existe une petite icône en forme de petit pinceau jaune intitulé (Format painter sur la version anglaise).
Ce petit pinceau magique permet de faire un copier coller du format d'une cellule (Bordure, couleur, format de cellules, taille de caractère, etc...)
Il suffit de ce mettre sur une cellule ou un champs de plusieurs cellules.
Cliquez sur ce pinceau.
Cliquez à l'endroit ou vous voulez reproduire la mise en forme.
D
euxième manière de procéder
Position sur la cellule à reproduire.
Ctrl + C
Positionement sur la cellule de destination Collage Spéciale puis Format
On s'est mal compris, j'ai du mal m'exprimer... Je connais la logique de mise en forme conditionnelle et le principe du format painter...
La mise en forme conditionnelle telle quelle est trop limitative, il y a 256³ valeurs de couleurs, je vais pas toutes les taper comme condition de couleur.
Le format painter c'est pas automatique, mais une opération manuelle à réitérer sur chaque cellule. A la limite une solution par macro pourrait le faire (en donnant manuellement la démarche qui sera enregistré dans l'excel, il suffira alors de lancer la macro pour faire toutes les copies de format de cellule), mais je souhaite éviter l'usage de macro dans cet excel.
L'idée que je souhaite mettre en place c'est que la couleur de fond de la cellule A1 prenne automatiquement la valeur écrite dans la cellule A2, je change la valeur de la cellule et la couleur de fond est automatiquement mise à jour dans la cellule A1 (et donc à terme toutes les cellules utilisant ce paramètre dans l'excel).
Si en A2 j'écris FF0000, en A1, j'ai un font rouge, si j'écris n'importe quoi en RGB de #000000 à #FFFFFF, la cellule A1 prend la couleur correspondant à ce qui est écrit.
La mise en forme conditionnelle telle quelle est trop limitative, il y a 256³ valeurs de couleurs, je vais pas toutes les taper comme condition de couleur.
Le format painter c'est pas automatique, mais une opération manuelle à réitérer sur chaque cellule. A la limite une solution par macro pourrait le faire (en donnant manuellement la démarche qui sera enregistré dans l'excel, il suffira alors de lancer la macro pour faire toutes les copies de format de cellule), mais je souhaite éviter l'usage de macro dans cet excel.
L'idée que je souhaite mettre en place c'est que la couleur de fond de la cellule A1 prenne automatiquement la valeur écrite dans la cellule A2, je change la valeur de la cellule et la couleur de fond est automatiquement mise à jour dans la cellule A1 (et donc à terme toutes les cellules utilisant ce paramètre dans l'excel).
Si en A2 j'écris FF0000, en A1, j'ai un font rouge, si j'écris n'importe quoi en RGB de #000000 à #FFFFFF, la cellule A1 prend la couleur correspondant à ce qui est écrit.
Salut,
On doit pouvoir traiter ça sans VBA, avec une simple mise en forme conditionnelle, peux tu joindre un exemple de fichier annoté que l'on comprenne la demande, pour joindre le fichier utiliser ce lien
https://www.cjoint.com/
On doit pouvoir traiter ça sans VBA, avec une simple mise en forme conditionnelle, peux tu joindre un exemple de fichier annoté que l'on comprenne la demande, pour joindre le fichier utiliser ce lien
https://www.cjoint.com/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Couleur hexa en B pour colorer A :
Mais pour moi une cellule excel ne peut prendre que 56 couleurs.
Ton gamut ne va pas être terrible... ;-)
A voir s'il y a eu des progrès sur 2010.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Couleur hexa en B pour colorer A :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim R As Long, G As Long, B As Long
If Target.Column <> 2 Then Exit Sub
R = CLng("&H" & Left(Target, 2))
G = CLng("&H" & Mid(Target, 3, 2))
B = CLng("&H" & Right(Target, 2))
Target.Offset(, -1).Interior.Color = RGB(R, G, B)
End Sub
Mais pour moi une cellule excel ne peut prendre que 56 couleurs.
Ton gamut ne va pas être terrible... ;-)
A voir s'il y a eu des progrès sur 2010.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Ça va être un mix entre plusieurs raisons
Par méconnaissance du vba, je tâtonne un peu dedans
Par soucis d'accessibilité, je compte le partager avec des personnes qui pourraient améliorer à leur tour et introduire du vba diminue l'accessibilité à certains
Par volonté d'homogénéité, j'ai pu sortir quelques éléments efficaces déjà via formule si je dois mettre du vba pour ça alors pourquoi pas pour un autre truc et un autre et un autre et je finirais par spammer le forum...
Pour le délai car si je dois me former mon Excel sera disponible bien plus tard que prévu.
L'intérêt de ma demande sert une exigence plus ergonomique qu'autre chose donc je préfère passer plus de temps sur les détails et calculs qui sont la raison principale de la création de cet Excel que sur les détails moins fonctionnels.
Par méconnaissance du vba, je tâtonne un peu dedans
Par soucis d'accessibilité, je compte le partager avec des personnes qui pourraient améliorer à leur tour et introduire du vba diminue l'accessibilité à certains
Par volonté d'homogénéité, j'ai pu sortir quelques éléments efficaces déjà via formule si je dois mettre du vba pour ça alors pourquoi pas pour un autre truc et un autre et un autre et je finirais par spammer le forum...
Pour le délai car si je dois me former mon Excel sera disponible bien plus tard que prévu.
L'intérêt de ma demande sert une exigence plus ergonomique qu'autre chose donc je préfère passer plus de temps sur les détails et calculs qui sont la raison principale de la création de cet Excel que sur les détails moins fonctionnels.
IMPOSSIBLE.
Problème insoluble sans macro (et même avec macro, c'est pas garanti) !
Problème insoluble sans macro (et même avec macro, c'est pas garanti) !