Bonjour,
Je viens de faire en vba une boucle pour faire des graphiques automatiques avec série .
En gros je veux afficher plusieurs courbes dans le même graphique.
Le problème c'est qu'elles s'affichent avec un petit décalage.
Je m'explique:
Les série sont selectionnées sur une colonne entière
La première ligne est le titre de la colonne ensuite vient les données...
Le problème c'est qu'au lieu de prendre le titre de mes colonnes pour le mettre en légende de ma courbe, excel transforme le titre en 0 et continue avec les données
Toutes mes courbes commence donc à zero avec un décalage par rapport à l'axe des absices (la date).
Si vous avez une idée, elle sera la bienvenue !!
code:
Sub Graph(selection As Range, selection0 As Range, selection1 As Range, selection2 As Range, titre As String)
Dim oGraphic As Object
Charts.Add
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).Values = selection0
ActiveChart.SeriesCollection(1).XValues = selection
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).Values = selection1
ActiveChart.SeriesCollection(2).XValues = selection
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(3).Values = selection2
ActiveChart.SeriesCollection(3).XValues = selection
ActiveChart.Location Where:=xlLocationAsObject, Name:="Accueil"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = titre
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
End With
ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlAutomatic
ActiveChart.HasLegend = True
ActiveChart.HasDataTable = False
End Sub