H
Hervé
Guest
Salut à tous,
je souhaite créer un graphe par macro, à partir de plage de données variables, voici le code que j'utilise:
'Création des plages de données
Sheets('Feuil1').Select
'Abscisse
Range('B2').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'journée_en_abscisse'
'Séries
'Charge actuelle
Range('B3').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'Charge_actuelle'
'Charge planifiée
Range('B4').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'Charge_planifiée'
'Création de graphique
Charts.Add
ActiveChart.ChartType = xlXYScatterSmooth
ActiveChart.SetSourceData Source:=Sheets('Feuil1').Range('B2')
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = '(journée_en_abscisse)'
ActiveChart.SeriesCollection(1).Values = '=(Charge_actuelle)'
ActiveChart.SeriesCollection(1).Name = '=''Charge actuelle'''
ActiveChart.SeriesCollection(2).XValues = '(journée_en_abscisse)'
ActiveChart.SeriesCollection(2).Values = '=(Charge_planifiée)'
ActiveChart.SeriesCollection(2).Name = '=''Charge planifiée'''
ActiveChart.Location Where:=xlLocationAsObject, Name:='Feuil1'
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = 'Résultats R9, du 31/01 au 25/02'
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
End With
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowNone, LegendKey:=False
(il est tres certainement pollué, mais n'etant pas encore tres doué pour le code, j'enregistre mes macros)
Ce code me semblait bon, mais excel n'en veut pas, l'erreur viendrait de la ligne
ActiveChart.SeriesCollection(1).Values = '=(Charge_actuelle)'
(il doit y avoir d'autres erreurs), est-ce que qqun pourrait m'aider à trouver mon erreur? j'ai l'impression de tourner en rond...
Merci beaucoup,
Hervé.
je souhaite créer un graphe par macro, à partir de plage de données variables, voici le code que j'utilise:
'Création des plages de données
Sheets('Feuil1').Select
'Abscisse
Range('B2').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'journée_en_abscisse'
'Séries
'Charge actuelle
Range('B3').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'Charge_actuelle'
'Charge planifiée
Range('B4').Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = 'Charge_planifiée'
'Création de graphique
Charts.Add
ActiveChart.ChartType = xlXYScatterSmooth
ActiveChart.SetSourceData Source:=Sheets('Feuil1').Range('B2')
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = '(journée_en_abscisse)'
ActiveChart.SeriesCollection(1).Values = '=(Charge_actuelle)'
ActiveChart.SeriesCollection(1).Name = '=''Charge actuelle'''
ActiveChart.SeriesCollection(2).XValues = '(journée_en_abscisse)'
ActiveChart.SeriesCollection(2).Values = '=(Charge_planifiée)'
ActiveChart.SeriesCollection(2).Name = '=''Charge planifiée'''
ActiveChart.Location Where:=xlLocationAsObject, Name:='Feuil1'
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = 'Résultats R9, du 31/01 au 25/02'
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
End With
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowNone, LegendKey:=False
(il est tres certainement pollué, mais n'etant pas encore tres doué pour le code, j'enregistre mes macros)
Ce code me semblait bon, mais excel n'en veut pas, l'erreur viendrait de la ligne
ActiveChart.SeriesCollection(1).Values = '=(Charge_actuelle)'
(il doit y avoir d'autres erreurs), est-ce que qqun pourrait m'aider à trouver mon erreur? j'ai l'impression de tourner en rond...
Merci beaucoup,
Hervé.