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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| Sub Graphique_MM()
'existandce du graphique
Dim Grph As ChartObject
On Error Resume Next
Set Grph = Sheets("Tab_Bord").ChartObjects("CourbeMM")
If Not Grph Is Nothing Then Grph.Delete
'============================
Const sheDonnéesSource As String = "Tab_Bord"
Dim chGraph As Chart
Dim rPlageAcceuil As Range
Dim rPlageSource As Range
Dim DerLign As Long
'recupere le nombre de ligne remplie
DerLign = Sheets("Chart_1min").Range("A1").End(xlDown).Row
With Sheets(sheDonnéesSource)
' Plage devant acceuillir le graphique
Set rPlageAcceuil = .Range("A18:H32").Offset(0, 1)
' Création du graphique
Set chGraph = .ChartObjects.Add(rPlageAcceuil.Left, rPlageAcceuil.Top, rPlageAcceuil.Width, rPlageAcceuil.Height).Chart
' Source du graphique
Set rPlageSource = Sheets("Chart_1min").Range("B1:J" & DerLign)
End With
With chGraph
' Type
.ChartType = xlLine
' Source du graphique
.SetSourceData Source:=rPlageSource, PlotBy:=xlColumns
' Affichage titre
.HasTitle = True
' Intitulé
.ChartTitle.Characters.Text = rPlageSource.Cells(1, 1)
' Légende en position haute
.Legend.Position = xlLegendPositionTop
' On efface les colonnes que l'on ne veut pas
.FullSeriesCollection(1).Delete
.FullSeriesCollection(1).Delete
.FullSeriesCollection(1).Delete
.FullSeriesCollection(1).Delete
.FullSeriesCollection(1).Delete
'On definie le max min des ordonnées
.Axes(xlValue).MinimumScale = Sheets("Chart_1min").Range("E" & DerLign)
.Axes(xlValue).MaximumScale = Sheets("Chart_1min").Range("D" & DerLign)
'On definie le max min des abcisses ================> LA JE BLOQUE
'.Axes(xlPrimary).MinimumScale = Sheets("Chart_1min").Range("B" & DerLign - 60)
'.Axes(xlCategory).MinimumScale = Sheets("Chart_1min").Range("B" & DerLign - 60)
'.Axes(xlCategory).MaximumScale = Sheets("Chart_1min").Range("B" & DerLign)
'.Axes(xlCategory).Crosses = Sheets("Chart_1min").Range("B" & DerLign - 60)
'renomme le chartObject
.Parent.Name = "CourbeMM"
End With
Sheets(sheDonnéesSource).Select
End Sub |
Partager