K
karim
Guest
Bonjour,
Voila mon problème:
J'ai un tableau avec des données et je veux tracer un graphique avec deux séries, l'une avec les 20 premières valeures du tableau et l'autre avec les 10 dernières.
Mon problème est que j'arrive à tracer le graphique mais pour les valeurs X, il garde pr la 2° série les mêmes valeurs dque la 1°!
Voici mon code sources:
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Heures_Gammées").Range(Sheets("Heures_Gammées").Range("K1").Offset(nbr_art + 19), _
Sheets("Heures_Gammées").Range("K1").Offset(nbr_art + 19 + (negatif - 1))) _
, PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).XValues = "=Heures_Gammées!R" & (nbr_art + 20) & "C2:R" & (nbr_art + 19 + negatif) & "C2"
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).Values = "=Heures_Gammées!R" & (nbr_art + 20 + negatif + nul) & "C11:R" & (nbr_art + 19 + negatif + nul + positif) & "C11"
ActiveChart.SeriesCollection(2).XValues = "=Heures_Gammées!R" & (nbr_art + 20 + negatif + nul) & "C2:R" & (nbr_art + 19 + negatif + nul + positif) & "C2"
ActiveChart.Location Where:=xlLocationAsNewSheet
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Somme des EI par tâche (Heures)"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Tâche"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Heures"
End With
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel, LegendKey:=False
ActiveChart.HasDataTable = False
ActiveChart.Name = "EI cumulé par Tâche---"
ActiveChart.Axes(xlCategory).Select
With Selection
.MajorTickMark = xlOutside
.MinorTickMark = xlNone
.TickLabelPosition = xlNone
End With
ActiveChart.SeriesCollection(1).DataLabels.Font.Bold = True
ActiveChart.SeriesCollection(2).DataLabels.Font.Bold = True
ActiveChart.SeriesCollection(1).Name = "=""EI < 0"""
ActiveChart.SeriesCollection(2).Name = "=""EI > 0"""
Merci d'avance!
Voila mon problème:
J'ai un tableau avec des données et je veux tracer un graphique avec deux séries, l'une avec les 20 premières valeures du tableau et l'autre avec les 10 dernières.
Mon problème est que j'arrive à tracer le graphique mais pour les valeurs X, il garde pr la 2° série les mêmes valeurs dque la 1°!
Voici mon code sources:
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Heures_Gammées").Range(Sheets("Heures_Gammées").Range("K1").Offset(nbr_art + 19), _
Sheets("Heures_Gammées").Range("K1").Offset(nbr_art + 19 + (negatif - 1))) _
, PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).XValues = "=Heures_Gammées!R" & (nbr_art + 20) & "C2:R" & (nbr_art + 19 + negatif) & "C2"
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).Values = "=Heures_Gammées!R" & (nbr_art + 20 + negatif + nul) & "C11:R" & (nbr_art + 19 + negatif + nul + positif) & "C11"
ActiveChart.SeriesCollection(2).XValues = "=Heures_Gammées!R" & (nbr_art + 20 + negatif + nul) & "C2:R" & (nbr_art + 19 + negatif + nul + positif) & "C2"
ActiveChart.Location Where:=xlLocationAsNewSheet
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Somme des EI par tâche (Heures)"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Tâche"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Heures"
End With
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel, LegendKey:=False
ActiveChart.HasDataTable = False
ActiveChart.Name = "EI cumulé par Tâche---"
ActiveChart.Axes(xlCategory).Select
With Selection
.MajorTickMark = xlOutside
.MinorTickMark = xlNone
.TickLabelPosition = xlNone
End With
ActiveChart.SeriesCollection(1).DataLabels.Font.Bold = True
ActiveChart.SeriesCollection(2).DataLabels.Font.Bold = True
ActiveChart.SeriesCollection(1).Name = "=""EI < 0"""
ActiveChart.SeriesCollection(2).Name = "=""EI > 0"""
Merci d'avance!