Histogramme empilé macro Excel

Bonjour,

je veux realiser un histogramme empilé macro excel depuis un tableau ( 4 colonnes )

Colonne Z ( identifiant )

Colonne AA ( nom erreur )

Colonne AB ( fequence )

Colonne AC ( couleur )

Je veux le diagramme son AXE des X prends les Valeurs de la colonne Z les identifiants , et l'axe des Y la colonne AB la frequence et les barres chacune par sa couleur ( qui est dans la colonne AC ) et avec une légende qui affiche chaque couleur liée a quel nom d'erreur

Voici mon tableau :

image

Voici le code que j'ai commencé avec :

Set plageDiagrammeT = FeuilleName.Range("Z1:AC" & lastRowIDF)

' Créer le diagramme
Set diagramme = FeuilleName.ChartObjects.Add(Left:=400, Width:=675, Top:=0, Height:=225)
' Configurez le type de graphique
diagramme.Chart.ChartType = xlColumnClustered ' Vous pouvez ajuster le type de graphique si nécessaire

' Définir le type de graphique
With diagramme.Chart
.SetSourceData Source:=plageDiagrammeT, PlotBy:=xlColumns
.ChartType = xlColumnStacked
.HasTitle = True
.ChartTitle.Text = "Titre du Diagramme"
.SeriesCollection(1).XValues = FeuilleName.Range("Z2:Z" & lastRowIDF) ' Axe des X
.SetSourceData Source:=FeuilleName.Range("AB2:AB" & lastRowIDF)
.FullSeriesCollection(1).XValues = FeuilleName.Range("Z2:Z" & lastRowIDF) ' Légende
.Axes(xlCategory).TickLabelPosition = xlTickLabelPositionNextToAxis ' Position des étiquettes sur l'axe des X
' Ajouter les valeurs de la colonne AA comme légende
With FeuilleName
For i = 2 To lastRowIDF
If Not IsEmpty(.Cells(i, 27).Value) And Not IsEmpty(.Cells(i, 29).Value) Then
diagramme.Chart.SeriesCollection.NewSeries
diagramme.Chart.FullSeriesCollection(i).Name = .Cells(i, 27).Value ' Colonne AA + AC

End If
Next i

End With

End With
' Personnalisez les couleurs des barres
i = 0
For i = 2 To lastRowIDF
Dim colorCode As Long
RGBColor = FeuilleName.Cells(i, 29).Value ' Colonne AC (valeur RGB)
RGBValues = Split(Mid(RGBColor, 5, Len(RGBColor) - 5), ",")
redValue = Trim(RGBValues(0))
greenValue = Trim(RGBValues(1))
blueValue = Trim(RGBValues(2))
diagramme.Chart.SeriesCollection(1).Format.Fill.ForeColor.RGB = RGB(redValue, greenValue, blueValue)
Next i

' Affichez le graphique
diagramme.Activate

Voici ce qu'il m'affiche

image

j'ai pas pu afficher chaque barre par sa couleur et la legende elle regroupe pas les nom d'erreur

Svp, connaissez vous un moyen de le faire simplement et automatiquement pour toutes les barres de l'histogramme d'un coup ?

Merci d'avance

YRI

Rechercher des sujets similaires à "histogramme empile macro"