Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel > Forcer les couleurs d'un graphique
Vous inscrire
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus


Réponse
 
LinkBack Outils de la discussion
Vieux 31/10/2007, 19h07   #1 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Smile Forcer les couleurs d'un graphique

Bonjour à tous,

J'édite un graphique (camembert ou histogramme avec plusieurs séries) que je remets à jour régulieremenr. je voudrais utiliser toujours la même couleur pour la même série "en automatique". (Le nombre de série peut varier, ce qui m'oblige à modifier une à une les couleurs du graphique ...). Je joins un fichier d'exemple pour plus de facilité.
Seb!
Fichiers attachés
Type de fichier : xls grph xls forcer couleur des series.xls (18,0 Ko, 108 affichages)
seb2 est déconnecté   Réponse avec citation
ANNONCES
Vieux 31/10/2007, 19h29   #2 (permalink)
CB60
XLDnaute Accro
 
Date d'inscription: février 2006
Version Excel : Excel 2003 (PC)
Messages: 1 821
Par défaut Re : Forcer les couleurs d'un graphique

Bonsoir
Regarde si cela te convient
J'ai prévus 12 series dans les couleurs du graph
Fichiers attachés
Type de fichier : zip grphcouleurmacro.zip (10,5 Ko, 84 affichages)
__________________

L'imagination est plus importante que le savoir.... A . Einstein.
CB60 est déconnecté   Réponse avec citation
Vieux 31/10/2007, 21h12   #3 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Red face Re : Forcer les couleurs d'un graphique

Merci beaucoup pour la réponse ! (et la rapidité )
La solution est bien, mais il reste 2 points :
-Si la série "A" se trouve en ligne 8 la couleur de la série est jaune, moi je voudrais que la série "A" reste en rouge sur le graphe (comme au départ)
- ensuite si je supprime la ligne la serie "F" (suppression de la ligne) les couleurs sont décalées : la série "G" est en noir alors qu'elle devrait être en marron ci-joint le fichier :
Seb !
Fichiers attachés
Type de fichier : zip grphcouleurmacro2.zip (10,4 Ko, 16 affichages)
seb2 est déconnecté   Réponse avec citation
Vieux 31/10/2007, 21h17   #4 (permalink)
CB60
XLDnaute Accro
 
Date d'inscription: février 2006
Version Excel : Excel 2003 (PC)
Messages: 1 821
Par défaut Re : Forcer les couleurs d'un graphique

re
Je ne pense pas que ce soit possible ce que tu demande.
Les couleurs sont affectés en fonction de la premiere série, la macro ne peut pas testé les valeurs de cellule et mettre une couleur en fonction de cela. ( mais je ne suis pas un expert en macro)
__________________

L'imagination est plus importante que le savoir.... A . Einstein.
CB60 est déconnecté   Réponse avec citation
Vieux 31/10/2007, 22h54   #5 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Question Re : Forcer les couleurs d'un graphique

Dommage, merci pour ton aide
Seb!
seb2 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 01h22   #6 (permalink)
myDearFriend!
XLDnaute Barbatruc
 
Avatar de myDearFriend!
 
Date d'inscription: février 2005
Messages: 2 230
Par défaut Re : Forcer les couleurs d'un graphique

Bonsoir seb2, l'ami CB60,

Pas certain d'avoir vraiment cerné la totalité du problème, mais vous trouverez en pièce jointe ce que j'ai compris de votre échange...

Le code utilisé est le suivant :

Code:
DANS LE MODULE DE CODE DE LA FEUILLE

Private Sub Worksheet_Change(ByVal Target As Range)
'myDearFriend!  -  www.mdf-xlpages.com
Dim Cel As Range
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Target, Range("B6:B30")) Is Nothing Then
        Set Cel = Sheets("Corresp.Couleurs").Columns(1).Find(Target.Value, LookIn:=xlValues)
        If Not Cel Is Nothing Then
            Target.Offset(0, -1).Interior.Color = Cel.Interior.Color
            ActiveSheet.ChartObjects("Graphique 1").Chart.SeriesCollection(1) _
                            .Points(Target.Row - 5).Interior.Color = Cel.Interior.Color
        End If
    End If
End Sub
L'utilisation est expliquée dans le classeur joint.

Cordialement,
Fichiers attachés
Type de fichier : zip mDF_ForcerCouleursSeriesGraph.zip (11,6 Ko, 66 affichages)
__________________
Didier_mDF

www.mdf-xlpages.com
myDearFriend! est déconnecté   Réponse avec citation
Vieux 01/11/2007, 08h34   #7 (permalink)
CB60
XLDnaute Accro
 
Date d'inscription: février 2006
Version Excel : Excel 2003 (PC)
Messages: 1 821
Par défaut Re : Forcer les couleurs d'un graphique

Bonjour à tous

Merci MDF pour ce joli Boulot, heureusement que j'avais mis ça:
mais je ne suis pas un expert en macro

Il me reste beaucoup à apprendre
__________________

L'imagination est plus importante que le savoir.... A . Einstein.
CB60 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 10h33   #8 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Smile Re : Forcer les couleurs d'un graphique

Bonjour à tous !

Bravo MDF ! c'est super ce que tu as fait !
(juste une petite remarque, lorsque on change la couleur dans corresp couleurs, il faut "retaper" le nom de la serie pour qu'excel fasse la modif)
En tout cas ton fichier me va très bien
Merci beaucoup !
Seb!
seb2 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 11h33   #9 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Question Re : Forcer les couleurs d'un graphique

C'est encore moi, je voudrais faire la même chose avec un histogramme, je pensais y arriver, mais je ne connais pas suffisament VBA. Je joins le fichier pour exemple. (En faite je voudrais à la fois un camembert et un histogramme sur la même feuille)
Merci d'avance
Seb!
Fichiers attachés
Type de fichier : zip mDF_ForcerCouleursSeriesGraph Seb.zip (12,8 Ko, 19 affichages)
seb2 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 13h26   #10 (permalink)
myDearFriend!
XLDnaute Barbatruc
 
Avatar de myDearFriend!
 
Date d'inscription: février 2005
Messages: 2 230
Par défaut Re : Forcer les couleurs d'un graphique

Bonjour seb2, CB60, le Forum,

Citation:
Posté par CB60
Bonjour à tous

Merci MDF pour ce joli Boulot, heureusement que j'avais mis ça:
mais je ne suis pas un expert en macro

Il me reste beaucoup à apprendre
Cher ami Bruno, pour ma part, c'est grâce à ton travail que je me familiarise peu à peu avec les graphiques Excel. Sur ce thème, il me reste, moi aussi, beaucoup à apprendre et je t'en remercie.

Seb2, tu trouveras ci-joint ton fichier modifié selon tes souhaits.

J'ai dû modifier légèrement la procédure pour trouver un traitement commun aux 2 types de graphique :
Code:
DANS LE MODULE DE CODE DE LA FEUILLE

Private Sub Worksheet_Change(ByVal Target As Range)
'myDearFriend!  -  www.mdf-xlpages.com
Dim Graph As ChartObject
Dim Cel As Range
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Target, Range("B6:B30")) Is Nothing Then
        Set Cel = Sheets("Corresp.Couleurs").Columns(1).Find(Target.Value, LookIn:=xlValues)
        If Not Cel Is Nothing Then
            Target.Offset(0, -1).Interior.Color = Cel.Interior.Color
            For Each Graph In ActiveSheet.ChartObjects
                Graph.Chart.Legend.LegendEntries(Target.Row - 5).LegendKey.Interior.Color = Cel.Interior.Color
            Next Graph
        End If
    End If
End Sub
J'agis cette fois directement sur les légendes du graphique et non plus sur les séries, ce qui donne au final le même effet pour tous les graphiques présents.

Par ailleurs, ta remarque est bonne, seule la modification du nom de série en feuille principale peut faire agir cette macro. Ainsi, en cas de modification des couleurs en feuille "Corresp.Couleurs", il faut obligatoirement revalider le nom de série correspondant en feuille principale pour déclencher le traitement.

Cordialement,
Fichiers attachés
Type de fichier : zip mDF_ForcerCouleursSeriesGraph Seb2.zip (10,7 Ko, 76 affichages)
__________________
Didier_mDF

www.mdf-xlpages.com
myDearFriend! est déconnecté   Réponse avec citation
Vieux 01/11/2007, 17h44   #11 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Thumbs up Re : Forcer les couleurs d'un graphique

Merci beaucoup MDF !
C'est exactement ce que je voulais
Bravo !
Seb!
seb2 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 22h36   #12 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Question Re : Forcer les couleurs d'un graphique

... C’est encore moi ...
Il y a un petit bug dans la macro que je n’arrive pas à résoudre, à partir de la lettre G (cellule B12) lorsque je retape cette lettre pour mettre à jour la couleur j’ai le message d’erreur suivant : Impossible de lire la propriété Legendentries de la classe legend. ...
Je ne comprends pas pourquoi le problème apparait seulement à partir de G.
Seb !
seb2 est déconnecté   Réponse avec citation
Vieux 01/11/2007, 22h53   #13 (permalink)
myDearFriend!
XLDnaute Barbatruc
 
Avatar de myDearFriend!
 
Date d'inscription: février 2005
Messages: 2 230
Par défaut Re : Forcer les couleurs d'un graphique

Re,

Ton graph "histogramme" ne possède pas de série (et donc de légende) au-delà de F... d'où l'erreur !

Peut-être faudrait-il que tu revois de façon logique tes graphiques.

Sinon, si tu veux contourner ce message causé, il est vrai, par un seul des deux graphiques :

Code:
DANS LE MODULE DE CODE DE LA FEUILLE

Private Sub Worksheet_Change(ByVal Target As Range)
'myDearFriend!  -  www.mdf-xlpages.com
Dim Graph As ChartObject
Dim Cel As Range
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Target, Range("B6:B30")) Is Nothing Then
        Set Cel = Sheets("Corresp.Couleurs").Columns(1).Find(Target.Value, LookIn:=xlValues)
        If Not Cel Is Nothing Then
            Target.Offset(0, -1).Interior.Color = Cel.Interior.Color
            On Error Resume Next
            For Each Graph In ActiveSheet.ChartObjects
                Graph.Chart.Legend.LegendEntries(Target.Row - 5).LegendKey.Interior.Color = Cel.Interior.Color
            Next Graph
            On Error GoTo 0
        End If
    End If
End Sub
Cordialement,
__________________
Didier_mDF

www.mdf-xlpages.com
myDearFriend! est déconnecté   Réponse avec citation
Vieux 02/11/2007, 10h51   #14 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Thumbs up Re : Forcer les couleurs d'un graphique

Bonjour MDF !

Encore merci ! T'est vraiment sympa.
J'ai fais les modif dans le fichier et tout marche bien.
Je joins ici la dernière version du fichier avec un camembert et un histogramme. Ce fichier permet de définir les couleurs de la légende des deux graphes et aussi de les modifier. Les deux graphes comportent 26 series (ce qui est beaucoup trop) mais on peut toujours en supprimer.

Bavo MDF!

Seb !
Fichiers attachés
Type de fichier : zip mDF_ForcerCouleursSeriesGraph Seb3_xlD.zip (16,8 Ko, 97 affichages)
seb2 est déconnecté   Réponse avec citation
Vieux 17/11/2007, 10h59   #15 (permalink)
seb2
XLDnaute Nouveau
 
Date d'inscription: octobre 2007
Messages: 20
Question Re : Forcer les couleurs d'un graphique

Bonjour à tous !

J'ai voulu améliorer le fichier pour obtenir un graphique dynamique avec la commande DECALER. Mais j'ai des problème avec l'histogramme.
Depuis la modification, l'affichage des valeurs et de la légende est faux pour l'histogramme, il y a une permutation circulaire de la légende (et des valeurs) à chaque mise à jour. Et je n'arrive pas à regler le problème.
Ci-joint le fichier :
Fichiers attachés
Type de fichier : zip mDF_ForcerCouleursSeriesGraph Seb3 decaler v4.zip (21,6 Ko, 41 affichages)
seb2 est déconnecté   Réponse avec citation
ANNONCES
Réponse



Outils de la discussion

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires
Discussion Auteur Forum Réponses Dernier message
couleurs sur un graphique hiul Forum Excel 4 03/09/2007 13h23
Forcer l'ouverture d'un classeur à une feuille tof Forum Excel 4 28/03/2006 16h11
couleurs d'un graphique Cruz Forum Excel 1 08/02/2006 21h34
Forcer impression d'un texte Papy Novice Forum Excel Downloads - Archives 2 20/02/2005 20h56
Couleurs des barres de graphique nico Forum Excel Downloads - Archives 2 11/05/2004 09h44


Fuseau horaire GMT +2. Il est actuellement 14h44.


(C) 2006 Excel Downloads