Passer au contenu principal

Comment colorier basé sur la couleur de cellule dans Excel?

Normalement, lorsque vous créez un graphique, la couleur de la barre de colonnes est la couleur par défaut. Si vous devez formater la couleur remplie sur chaque barre en fonction des couleurs de cellule comme illustré ci-dessous, comment pouvez-vous le résoudre dans Excel?

Colorez le graphique avec une ou plusieurs séries de données en fonction de la couleur de la cellule avec des codes VBA

Colorez le graphique avec une ou plusieurs séries de données en fonction de la couleur de la cellule avec une fonctionnalité étonnante


Colorez le graphique avec une ou plusieurs séries de données en fonction de la couleur de la cellule avec des codes VBA

Colorez le graphique avec une série de données en fonction de la couleur de la cellule

Avec le code VBA suivant, vous pouvez changer rapidement la couleur du graphique qui contient une série de données en fonction de la couleur des valeurs de cellule d'origine, procédez comme suit:

1. Tout d'abord, créez un histogramme ou un histogramme comme illustré ci-dessous (sélectionnez les données et cliquez sur insérer > Insérer une colonne ou un graphique à barres):

2. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

3Cliquez sur insérer > Moduleet collez le code suivant dans la fenêtre Module.

Code VBA: barres de nuancier avec une série de données basée sur la couleur de cellule:

Sub ColorChartColumnsbyCellColor()
'Updateby Extendoffice
    Dim xChart As Chart
    Dim I As Long, xRows As Long
    Dim xRg As Range, xCell As Range
    On Error Resume Next
    Set xChart = ActiveSheet.ChartObjects("Chart 1").Chart
    If xChart Is Nothing Then Exit Sub
    With xChart.SeriesCollection(1)
        Set xRg = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1))
        xRows = xRg.Rows.Count
        Set xRg = xRg(1)
        For I = 1 To xRows
            .Points(I).Format.Fill.ForeColor.RGB = ThisWorkbook.Colors(xRg.Offset(I - 1, 0).Interior.ColorIndex)
        Next
    End With
End Sub

Notes: Dans le code ci-dessus, Graphique 1 est le nom du graphique que vous souhaitez utiliser, veuillez le remplacer par le vôtre.

4. Après avoir collé le code ci-dessus, veuillez appuyer sur F5 clé pour exécuter ce code, et la couleur des barres du graphique a été modifiée en fonction de la couleur d'origine de la cellule, voir capture d'écran:


Colorez le graphique avec plusieurs séries de données en fonction de la couleur de la cellule

Si votre graphique comprend plusieurs séries de données, veuillez appliquer le code VBA suivant:

1. Veuillez créer le graphique à barres ou à colonnes qui contient plusieurs séries de données comme illustré ci-dessous:

2. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

3Cliquez sur insérer > Moduleet collez le code suivant dans la fenêtre Module.

Code VBA: barres de nuancier avec plusieurs séries de données basées sur la couleur de cellule:

Sub CellColorsToChart()
'Updateby Extendoffice
    Dim xChart As Chart
    Dim I As Long, J As Long
    Dim xRowsOrCols As Long, xSCount As Long
    Dim xRg As Range, xCell As Range
    On Error Resume Next
    Set xChart = ActiveSheet.ChartObjects("Chart 1").Chart
    If xChart Is Nothing Then Exit Sub
    xSCount = xChart.SeriesCollection.Count
    For I = 1 To xSCount
        J = 1
        With xChart.SeriesCollection(I)
            Set xRg = ActiveSheet.Range(Split(Split(.Formula, ",")(2), "!")(1))
            If xSCount > 4 Then
                xRowsOrCols = xRg.Columns.Count
            Else
                xRowsOrCols = xRg.Rows.Count
            End If
            For Each xCell In xRg
                .Points(J).Format.Fill.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
                .Points(J).Format.Line.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
                J = J + 1
            Next
        End With
    Next
End Sub

4. Puis appuyez F5 clé pour exécuter ce code, les barres du graphique sont remplies avec la couleur d'origine des cellules à la fois, voir capture d'écran:

Notes:

1. Dans le code ci-dessus, Graphique 1 est le nom du graphique que vous souhaitez utiliser, veuillez le remplacer par le vôtre.

2. Ce code peut également être appliqué à un graphique en courbes.


Colorez le graphique avec une ou plusieurs séries de données en fonction de la couleur de la cellule avec une fonctionnalité étonnante

En utilisant les codes ci-dessus, les couleurs du graphique ne seront pas toujours adaptées à la couleur de la cellule, pour résoudre ce problème, ici, je vais vous présenter un outil utile - Changer la couleur du graphique en fonction de la couleur de la cellule of Kutools for Excel, avec cette fonctionnalité pratique, vous pouvez colorer le graphique en fonction de la couleur de la cellule rapidement et facilement.

Remarque: Appliquer cette Changer la couleur du graphique en fonction de la couleur de la cellule, tout d'abord, vous devez télécharger le Kutools for Excel, puis appliquez la fonction rapidement et facilement.

Après l'installation de Kutools for Excel, veuillez faire comme ceci:

1. Tout d'abord, veuillez insérer le graphique que vous souhaitez utiliser, puis sélectionnez le graphique, puis cliquez sur Kutools > Charts > Outils graphiques > Changer la couleur du graphique en fonction de la couleur de la cellule, voir capture d'écran:

2. Et puis, une boîte de dialogue apparaît, veuillez cliquer sur OK .

3. Maintenant, le graphique que vous avez sélectionné a été coloré en fonction des couleurs de cellule comme ci-dessous les captures d'écran montrées:

Colorez le graphique avec une série de données en fonction de la couleur de la cellule

Colorez le graphique avec plusieurs séries de données en fonction de la couleur de la cellule

Téléchargez et essayez gratuitement Kutools for Excel Now!


Plus d'articles relatifs aux graphiques:

  • Créer un graphique à barres superposant un autre graphique à barres dans Excel
  • Lorsque nous créons un histogramme ou un histogramme groupé avec deux séries de données, les deux barres de séries de données s'affichent côte à côte. Mais, parfois, nous devons utiliser la superposition ou le graphique à barres superposées pour comparer plus clairement les deux séries de données. Dans cet article, je vais expliquer comment créer un graphique à barres superposées dans Excel.
  • Copier un format de graphique vers d'autres dans Excel
  • En supposant qu'il existe plusieurs types de graphiques différents dans votre feuille de calcul, vous avez mis en forme un graphique en fonction de vos besoins et vous souhaitez maintenant appliquer ce formatage de graphique à d'autres graphiques. Bien sûr, vous pouvez formater les autres manuellement un par un, mais cela vous fera perdre beaucoup de temps, existe-t-il des moyens rapides ou pratiques de copier un format de graphique vers d'autres dans Excel?
  • Mettez en surbrillance les points de données maximum et minimum dans un graphique
  • Si vous avez un histogramme pour lequel vous souhaitez mettre en évidence les points de données les plus hauts ou les plus petits avec des couleurs différentes pour les surpasser, comme illustré ci-dessous. Comment pouvez-vous identifier les valeurs les plus élevées et les plus petites, puis mettre en évidence rapidement les points de données dans le graphique?
  • Créer un graphique en étapes dans Excel
  • Un graphique en étapes est utilisé pour montrer les changements survenus à intervalles irréguliers, c'est une version étendue d'un graphique en courbes. Mais, il n'y a aucun moyen direct de le créer dans Excel. Cet article, je vais parler de la façon de créer un graphique étape par étape dans une feuille de calcul Excel.
  • Créer un graphique à barres de progression dans Excel
  • Dans Excel, le graphique à barres de progression peut vous aider à suivre la progression vers une cible comme illustré ci-dessous. Mais, comment pouvez-vous créer un graphique à barres de progression dans une feuille de calcul Excel?

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
For more than 1 Chart:



Sub CellColorsToChart()'Updateby Extendoffice
Dim xChart As Chart
Dim I As Long, J As Long, Y As Long
Dim xRowsOrCols As Long, xSCount As Long Dim xRg As Range, xCell As Range
On Error Resume Next

For Y = 1 To 100Set xChart = ActiveSheet.ChartObjects("Chart "&Y).Chart If xChart Is Nothing Then Exit Sub
xSCount = xChart.SeriesCollection.Count
For I = 1 To xSCount
J = 1
With xChart.SeriesCollection(I)
Set xRg = ActiveSheet.Range(Split(Split(.Formula, ",")(2), "!")(1))
If xSCount > 4 Then
xRowsOrCols = xRg.Columns.Count
Else
xRowsOrCols = xRg.Rows.Count
End If
For Each xCell In xRg
.Points(J).Format.Fill.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
.Points(J).Format.Line.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
J = J + 1
Next
End WithNext
Next
End Sub

This comment was minimized by the moderator on the site
If i have more charts in my sheet? do you have another code?
This comment was minimized by the moderator on the site
It is ok. But... why simply not going to "Format Legend Entry" option in every data series in the chart, and go "Fill" and make it the color you want. I mean... all is ok, but a VBA code for this simple task is kinda overkill. But thanks. Appreciate you share it.
This comment was minimized by the moderator on the site
i cant make it work :( is this supposed to work on a stacked bar chart? Thanks
This comment was minimized by the moderator on the site
This was an awesome start, but the colors of the chart and the cells don't always match. Any idea why?
This comment was minimized by the moderator on the site
Thank you for the codes! How would you add a conditional format when the format is already established?
This comment was minimized by the moderator on the site
Thank you for these codes! This was exactly what I've been looking for with one detail not quite fitting. When I ran the code, the bar graphs colored in correctly but not legend which stayed unchanged. Is there a variation to the code that would include the legend? Or is there a way to match the Legend to the changes in the chart without a code?
This comment was minimized by the moderator on the site
If i have more charts in my sheet? do you have another code?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations