Sub CreerSeries()
Dim Graph As Chart, I As Long, PlageX As Range, PlageY As Range, Col As Integer
Dim Etiq As String
Set Graph = Sheets("feuil1").ChartObjects(1).Chart
With Sheets("Feuil1")
Set PlageX = .Range("H6").Resize(Application.CountIf(.[H:H], "><") - 1)
Col = .Rows(5).Find("Prix", , xlValues, , xlByColumns, xlPrevious).Column
Set PlageY = PlageX.Offset(, 2)
End With
With Graph
For I = .SeriesCollection.Count To 1 Step -1
.SeriesCollection(I).Delete
Next I
'creation des series
For I = 0 To Col - 10 Step 2
Set PlageY = PlageY.Offset(, I)
.SeriesCollection.NewSeries
With .SeriesCollection(.SeriesCollection.Count)
.Values = "=Feuil1!" & PlageY.Address
.XValues = "=Feuil1!" & PlageX.Address
'mise en forme de la série
.Format.Fill.ForeColor.ObjectThemeColor = msoThemeColorAccent2
.Format.Line.Visible = msoFalse
.MarkerStyle = 8
.MarkerSize = 5
.MarkerStyle = 1
.MarkerSize = 8
'étiquettes de données
.ApplyDataLabels
With .DataLabels
Etiq = "=Feuil1!" & PlageY.Offset(, -1).Address
.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, Etiq, 0
End With
End With
Next I
End With
End Sub