'### Constante à adapter ###
Const MA_FEUILLE As String = "test"
'###########################
Sub ConstruitGraphiques()
Dim C As Chart
'--- Construction d'un 1er graphique ---
Set C = Charts.Add
With C
.ChartType = xlPie
.SetSourceData Source:=Sheets(MA_FEUILLE).Range("C4:D10"), PlotBy:=xlColumns
.Location Where:=xlLocationAsObject, Name:=MA_FEUILLE
End With
'°°° Ne pas utiliser la variable object C mais le ActiveChart °°°
ActiveChart.Parent.Name = "Camembert" ' adapter par le nom désiré
'°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
'--- Construction d'un 2ème graphique ---
Set C = Charts.Add
With C
.ChartType = xlColumnClustered
.SetSourceData Source:=Sheets(MA_FEUILLE).Range("C4:D10")
.Location Where:=xlLocationAsObject, Name:=MA_FEUILLE
End With
'°°° Ne pas utiliser la variable object C mais le ActiveChart °°°
ActiveChart.Parent.Name = "Histogramme" ' adapter par le nom désiré
'°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
End Sub
Sub LitNomGraphique()
Dim CO As ChartObject
For Each CO In Sheets(MA_FEUILLE).ChartObjects
CO.Activate
MsgBox "Le nom du graphique est : ''" & CO.Name & "''"
Next CO
Call Placement
End Sub
Sub Placement(Optional dummy As Byte)
'--- On fait référence aux graphiques par leur nom ---
Sheets(MA_FEUILLE).ChartObjects("Camembert").Top = 1
Sheets(MA_FEUILLE).ChartObjects("Histogramme").Top = 250
End Sub