1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| Sub Test()
Dim a, b As Integer
Dim seriecol1, seriecol2 As SeriesCollection
Dim myseries1, myseries2 As Series
With ActiveSheet.ChartObjects.Add(100, 100, 500, 300).Chart
.ChartType = xlColumnClustered
.SeriesCollection.NewSeries
With .SeriesCollection.NewSeries
.Values = "=Feuil1!$B$3,Feuil1!$D$3,Feuil1!$F$3,Feuil1!$H$3,Feuil1!$J$3,Feuil1!$L$3"
.XValues = _
"={""Total"",""Filtration"",""Démi"",""Concentreurs"",""Séchoirs"",""Flottation""}"
.Name = "=""Réel"""
End With
Set seriesCol1 = ActiveSheet.ChartObjects(1).Chart.SeriesCollection
With .SeriesCollection.NewSeries
.Values = "=Feuil1!$C$3,Feuil1!$E$3,Feuil1!$G$3,Feuil1!$I$3,Feuil1!$K$3,Feuil1!$M$3"
.Name = "=""Référence"""
.Interior.Color = RGB(0, 0, 50)
End With
Set seriesCol2 = ActiveSheet.ChartObjects(1).Chart.SeriesCollection
.SetElement (msoElementChartTitleAboveChart)
.ChartTitle.Format.TextFrame2.TextRange.Characters.Text = Round(Now(), 0)
.SetElement (msoElementPrimaryValueAxisTitleRotated)
.Axes(xlValue, xlPrimary).AxisTitle.Text = "Pertes (kg eq gél/j)"
a = 1
b = 1
For Each myseries1 In seriesCol1
Set myseries1 = ActiveSheet.ChartObjects(1).Chart.SeriesCollection(a)
Set myseries2 = ActiveSheet.ChartObjects(1).Chart.SeriesCollection(b)
If myseries1 < myseries2 Then .Interior.Color = RGB(50, 0, 0) Else .Interior.Color = RGB(0, 50, 0)
a = a + 1
b = b + 1
Next
End With
End Sub |
Partager