Comment créer un histogramme groupé empilé ou un graphique en barres dans Excel ?
Dans un contexte professionnel d’analyse de données, visualiser plusieurs catégories et groupes au sein d’un même graphique permet une comparaison plus claire et une interprétation plus efficace. Une exigence courante consiste à combiner des données empilées et groupées — par exemple, pour afficher les ventes par région et par trimestre sous forme de barres organisées côte à côte. Cet article vous guide pas à pas dans la création d’un graphique à colonnes groupées empilées dans Excel, qui vous permet de comparer les valeurs individuelles des catégories via des barres groupées, chaque groupe étant composé de segments empilés. Cette approche facilite une analyse comparative puissante entre les groupes et selon plusieurs variables, comme le montre la capture d’écran ci-dessous.

➤ Créer un Graphique à colonnes groupées empilé dans Excel
➤ Code VBA – Automatiser le remodelage des données et la génération du graphique
➤ Formule Excel – Restructurer dynamiquement les données pour des graphiques empilés groupés
Créer un Graphique à colonnes groupées empilé dans Excel
Pour créer un graphique à colonnes groupées empilé dans Excel, sachez qu’Excel ne le prend pas en charge nativement. Toutefois, vous pouvez reproduire cet effet en préparant soigneusement vos données et en personnalisant la mise en page du graphique.
✅ Ce que vous devez savoir au préalable :
- Excel ne propose pas de type « graphique à colonnes groupées empilées groupées » intégré. Ce résultat est obtenu grâce à des astuces dans la disposition des données.
- Vous devez restructurer vos données source afin de simuler des groupes groupés.
- Des lignes vides sont insérées entre les groupes de catégories pour séparer visuellement chaque groupe.
Parcourons ensemble cette procédure étape par étape, à l’aide d’un exemple de données de ventes couvrant plusieurs produits sur plusieurs trimestres.
1. Organisez vos données brutes : Dans cet exemple, les noms des produits figurent en colonne A, et les données de ventes (par exemple Réel vs Objectif pour T1 et T2) se trouvent dans les colonnes adjacentes. L’objectif est de regrouper, pour chaque produit, les données côte à côte et d’afficher les valeurs Réel et Objectif empilées au sein de chaque groupe.
2. Restructurez les données : Copiez chaque groupe de données (par exemple, chaque ligne de produit) vers une nouvelle disposition, en insérant une ligne vide entre chaque groupe. Cela permet à Excel d’interpréter chaque groupe comme un ensemble distinct dans le graphique à colonnes empilées.

3. Créez le graphique : Sélectionnez vos données nouvellement structurées, puis accédez à Insertion > Histogramme ou Graphique en barres > Histogramme empilé.

4. Mettez en forme les séries : Cliquez avec le bouton droit sur n’importe quelle barre du graphique, puis sélectionnez Format des séries de données.

5. Réduisez l’espacement entre les barres : Dans le volet Format des séries de données, accédez à Options des séries, puis définissez Espacement = 0 % afin de compresser visuellement chaque groupe en un seul cluster empilé.

6. Ajustez la légende et la mise en page : Cliquez avec le bouton droit sur la légende > Format de la légende.

7. Choisissez la position de la légende : Dans le volet Format de la légende, sous l’onglet Options de la légende, sélectionnez la position souhaitée (Droite, Haut, Gauche ou Bas) pour adapter parfaitement la légende à votre graphique et éviter tout chevauchement avec les données.

✅ Résultat : Vous disposez désormais d’un graphique à colonnes groupées empilées, où les données Réel/Objectif de chaque produit sont regroupées et empilées côte à côte pour une comparaison rapide.
⚠️ Limitation : Cette méthode convient parfaitement aux petits jeux de données. Toutefois, avec des jeux volumineux ou fréquemment mis à jour, la restructuration manuelle peut facilement entraîner des erreurs. Découvrez dans les sections suivantes des solutions automatisées à l’aide de VBA et de formules.
Code VBA – Automatisation de la restructuration des données et de la génération du graphique
Lorsque vous travaillez avec des jeux de données volumineux ou des rapports fréquemment mis à jour, réorganiser manuellement les données pour créer des graphiques groupés empilés devient vite fastidieux et source d’erreurs. Grâce à VBA (Visual Basic for Applications), vous automatisez l’intégralité du processus — de la restructuration du tableau source à l’insertion du graphique — et gagnez ainsi temps et effort.
Cette méthode convient particulièrement aux utilisateurs à l’aise avec les macros Excel ou évoluant dans des environnements où VBA est autorisé. Elle s’avère particulièrement efficace lorsque la structure de votre graphique reste inchangée, mais que les données sont régulièrement mises à jour. Voici comment la mettre en œuvre :
Étape 1 : Appuyez sur Alt + F11 pour ouvrir l’éditeur VBA. Dans l’éditeur, cliquez sur Insertion > Module.
Étape 2 :Collez le code VBA suivant dans la fenêtre du module :
Sub CreateStackedClusteredChart()
Dim ws As Worksheet
Dim rngData As Range
Dim chartObj As ChartObject
Dim chartRange As Range
Dim xTitleId As String
On Error Resume Next
Set ws = ActiveSheet
xTitleId = "KutoolsforExcel"
' Prompt user to select original data
Set rngData = Application.InputBox("Select the original grouped data (including all headers):", xTitleId, Selection.Address, Type:=8)
If rngData Is Nothing Then Exit Sub
' Create new worksheet for reshaped data
Dim wsChartData As Worksheet
Set wsChartData = Worksheets.Add
wsChartData.Name = "ChartData_" & Format(Now(), "hhmmss")
Dim numRows As Long, numCols As Long, i As Long, j As Long, outRow As Long
numRows = rngData.Rows.Count
numCols = rngData.Columns.Count
outRow = 1
' Add headers
wsChartData.Cells(outRow, 1).Value = "Category"
For j = 2 To numCols
wsChartData.Cells(outRow, j).Value = rngData.Cells(1, j).Value
Next j
outRow = outRow + 1
' Copy data and insert blank rows
For i = 2 To numRows
For j = 1 To numCols
wsChartData.Cells(outRow, j).Value = rngData.Cells(i, j).Value
Next j
outRow = outRow + 1
If i < numRows Then
wsChartData.Cells(outRow, 1).Value = ""
outRow = outRow + 1
End If
Next i
' Define chart data range
Set chartRange = wsChartData.Range(wsChartData.Cells(1, 1), wsChartData.Cells(outRow - 1, numCols))
' Insert chart
Set chartObj = wsChartData.ChartObjects.Add(Left:=100, Top:=30, Width:=500, Height:=350)
With chartObj.Chart
.SetSourceData Source:=chartRange
.ChartType = xlColumnStacked
.HasTitle = True
.ChartTitle.Text = "Stacked Clustered Column Chart"
.Legend.Position = xlLegendPositionRight
.ChartGroups(1).GapWidth = 0
End With
MsgBox "Chart generated successfully.", vbInformation, "KutoolsforExcel"
End Sub Étape 3 : Appuyez sur Alt + F8 pour ouvrir la boîte de dialogue Macro. Sélectionnez CreateStackedClusteredChart, puis cliquez sur Exécuter.
Étape 4 : À l’invite, sélectionnez votre jeu de données initial (avec en-têtes). La macro générera automatiquement une nouvelle feuille de calcul avec des lignes vides insérées et créera le graphique à colonnes groupées empilé.
📝 Conseils :
- Assurez-vous que votre tableau d’origine dispose d’en-têtes de colonne clairs et d’une mise en forme cohérente.
- Vous pouvez relancer la macro à tout moment dès que vos données sont mises à jour — plus besoin de répéter manuellement les étapes.
✅ Avantages : Gagnez du temps, bénéficiez d’une mise en page précise et créez facilement des rapports récurrents.
⚠️ Inconvénients : Nécessite Excel avec les macros activées ainsi qu’une connaissance de base de VBA.
Formule Excel – Restructuration dynamique des données pour les graphiques groupés empilés
Si vous préférez ne pas utiliser VBA ou si vous avez besoin d’une solution qui met à jour automatiquement votre graphique dès que vos données brutes changent, optez pour des formules afin de restructurer vos données source dans le format idéal pour les graphiques groupés empilés. En combinant des fonctions intégrées telles que INDEX, TRANSPOSE et quelques colonnes auxiliaires, vous créez une zone de transformation qui fournit toujours la structure parfaite pour votre graphique — avec un minimum d’effort.
Cette approche s’avère particulièrement pratique lorsque vos données brutes sont régulièrement mises à jour (nouvelles périodes, catégories, etc.) et que vous souhaitez que votre graphique s’adapte automatiquement, sans aucune restructuration manuelle. La condition essentielle consiste à créer une section « auxiliaire » qui, grâce à des formules, extrait et organise les blocs de données ainsi que les lignes vides, garantissant ainsi que la source de votre graphique reste toujours à jour.
Voici un exemple de la manière dont vous pourriez configurer cela :
- Supposons que vos données initiales se trouvent dans A1:D7(avec)A1 en tant que cellule supérieure gauche des en-têtes), structurées avec les régions ou catégories en colonne A et les valeurs par sous-catégorie (par exemple T1, T2, T3) dans les colonnes B, C et D.
- Vous souhaitez afficher chaque catégorie sous forme de groupe, avec les valeurs trimestrielles empilées, en utilisant des lignes vides pour séparer les groupes.
1. Dans une nouvelle feuille ou une zone adjacente, créez une structure auxiliaire pour extraire chaque groupe et insérer des lignes vides. Par exemple, pour copier la première ligne de données en E2:G2 :
=INDEX($A$2:$D$7,INT((ROW()-2)/2)+1,COLUMN()-4+1) Faites glisser cette formule vers le bas selon vos besoins. Pour insérer des lignes vides entre les groupes, configurez une formule SIrenvoyant une cellule vide («») sur les lignes alternées :
=IF(ISODD(ROW()), "", INDEX($A$2:$D$7,ROW()/2,COLUMN()-4+1)) Combinez ces formules avec des références soigneusement structurées pour générer vos données reformatées, y compris des lignes vides à intervalles réguliers.
2. Une fois votre plage de données transformée (incluant empilements et regroupements), sélectionnez cette nouvelle plage et créez votre graphique à colonnes empilées selon la méthode initiale décrite précédemment ()Insertion>Histogramme empilé). Votre graphique reflétera désormais automatiquement toute modification apportée au tableau de données d’origine.
Avec les grands jeux de données, il est souvent utile d’utiliser la fonction DECALER pour rendre l’extraction plus flexible ou pour définir la source du graphique à l’aide de plages nommées dynamiques.
Avantages : Aucun VBA ni macro requis — idéal pour les environnements où les scripts sont restreints.
Inconvénients : Configuration complexe des formules pour de grands volumes de données ; ralentissement possible des performances avec des plages dynamiques très étendues.
Dépannage : Si votre graphique ne se met pas à jour correctement, vérifiez attentivement les erreurs de référence ou les incohérences dans les formules auxiliaires. Assurez-vous que les lignes vides sont correctement insérées, car elles sont essentielles pour obtenir l’apparence « groupée ».
Autres articles relatifs aux graphiques :
- Créer un Graphique en barres superposé à un autre Graphique en barres dans Excel
- Lorsque nous créons un histogramme groupé ou un graphique à colonnes comportant deux séries de données, les barres de chaque série s’affichent côte à côte. Toutefois, il peut parfois être plus clair d’utiliser un graphique en barres superposé (ou en chevauchement) pour comparer efficacement ces deux séries. Dans cet article, je vous explique comment créer un graphique en barres superposé dans Excel.
- Créer un Graphique en escalier dans Excel
- Un graphique en escalier permet de visualiser les évolutions survenues à des intervalles irréguliers ; il s’agit d’une variante enrichie du graphique en courbes. Toutefois, Excel ne propose pas d’option directe pour le générer. Dans cet article, je vous guide pas à pas pour créer facilement un graphique en escalier dans une feuille Excel.
- Mettre en évidence les points de données maximaux et minimaux dans un graphique
- Si vous disposez d’un Graphique à colonnes dans lequel vous souhaitez mettre en évidence les points de données les plus élevés ou les plus faibles à l’aide de couleurs différentes, comme illustré dans la capture d’écran ci-dessous, comment identifier rapidement les valeurs maximales et minimales, puis mettre en évidence ces points dans le graphique ?
- Créer un modèle de courbe en cloche dans Excel
- Le graphique en cloche, appelé « distribution normale » en statistiques, est généralement utilisé pour représenter les événements probables, le sommet de la courbe indiquant l’événement le plus probable. Dans cet article, je vous guiderai pour créer une courbe en cloche à partir de vos propres données et enregistrer le classeur sous forme de modèle dans Excel.
- Créer un graphique à bulles avec plusieurs séries dans Excel
- Comme vous le savez, pour créer rapidement un graphique en bulles, vous regroupez toutes les séries en une seule, comme illustré dans la capture d’écran 1. Je vais maintenant vous expliquer comment créer un graphique en bulles avec plusieurs séries, tel qu’illustré dans la capture d’écran 2 sous Excel.
Les meilleurs outils de productivité bureautique
Kutools pour Excel résout la majorité de vos problèmes et augmente votre productivité de 80 %
- Super Barre de formule (modifiez facilement plusieurs lignes de texte et de formules) ; Mode Lecture (lisez et modifiez aisément un grand nombre de cellules) ; Coller dans Plage de filtrage...
- Fusionner des cellules, lignes ou colonnes tout en conservant les données ; diviser le contenu des cellules ; combiner les lignes en double avec somme ou moyenne… empêcher les doublons dans les cellules ; comparer des plages…
- Sélectionner les doublons ou les éléments uniques dans les lignes ; Sélectionner les lignes vides (toutes les cellules sont vides) ; Super Recherche et recherche floue dans de nombreux classeurs ; sélection aléatoire…
- Copiez plusieurs cellules sans modifier les références de formule ; créez automatiquement des références vers plusieurs feuilles ; insérez des puces, des cases à cocher et bien plus encore…
- Favoris et insertion rapide de formules, plages, graphiques et images ; crypter les cellules avec mot de passe ; créer une liste de diffusion et envoyer des e-mails…
- Extraire du texte, ajouter du texte, supprimer les caractères à une position donnée, supprimer les espaces ; créer et imprimer les statistiques de la page de données ; convertir le contenu des cellules en commentaires et inversement...
- Super Filtre (enregistrez et appliquez des schémas de filtre à d’autres feuilles) ; Tri avancé par mois, semaine, jour, fréquence, etc. ; Filtre spécial par gras, italique…
- Combinez plusieurs classeurs et feuilles de calcul en un seul ; fusionnez des tableaux à partir d’une colonne clé ; répartissez vos données dans plusieurs feuilles ; convertissez en lot vos fichiers xls, xlsx et PDF…
- Regroupement dans un tableau croisé dynamique par numéro de semaine, jour de la semaine et bien plus encore…Afficher les cellules non verrouillées et verrouiller la sélection avec des couleurs distinctes ;Mettre en surbrillance les cellules contenant une formule ou un nom défini…
- Activez 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 vous évite des centaines de clics de souris chaque jour !