Bonjour,
J'ai réussi à partir d'une feuille de données à tracer un graphe sur une seconde feuille. J'aimerais pouvoir dans le code de la macro, réussir également à changer quelques propriétés de ce graphe:
Voici mon code:
Les modifications qu'il me reste à faire sont:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Sub Graphe() ' ' Graphe Macro ' ActiveSheet.Shapes.AddChart.Select ActiveChart.ChartType = xlXYScatterSmoothNoMarkers ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(1).Name = "=""Temp""" ActiveChart.SeriesCollection(1).XValues = "='Falex5023'!$A:$A" ActiveChart.SeriesCollection(1).Values = "='Falex5023'!$B:$B" ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(2).Name = "=""Torque""" ActiveChart.SeriesCollection(2).XValues = "='Falex5023'!$A:$A" ActiveChart.SeriesCollection(2).Values = "='Falex5023'!$I:$I" ActiveChart.SeriesCollection(1).Select ActiveSheet.ChartObjects("Graphique 1").Activate ActiveChart.SeriesCollection(1).AxisGroup = 2 ActiveSheet.ChartObjects("Graphique 1").Activate ActiveChart.SeriesCollection(1).Select ActiveSheet.ChartObjects("Graphique 1").Activate ActiveChart.ChartArea.Select ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Graph" ActiveChart.HasTitle = True ActiveChart.ChartTitle.Characters.Text = "Falex X" ActiveChart.Axes(xlCategory, xlPrimary).HasTitle = True ActiveChart.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Time (s)" ActiveChart.Axes(xlValue, xlPrimary).HasTitle = True ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Torque (N.m)" ActiveChart.Axes(xlValue, xlSecondary).HasTitle = True ActiveChart.Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = "Temp (°C)" End Sub
-la mise en place du titre de l'axe secondaire dans l'autre sens (pivoté de 90° mais vers la droite)
-l'indication du titre pour le graphe qui est tout simplement le nom de la première feuille (ou le nom du fichier sans l'extension)
-l'indication des cellules à sélectionner qui se trouvent dans la feuille portant le nom du graphe (ou première feuille) et non pas dans une feuille avec un nom spécifié comme à la ligne 11 ou 12 du code (Falex****).
J'ai tenté des choses et pour cela j'obtiens:
- Pour le titre de l'axe secondaire, je ne vois pas où le pivotement du titre se faire concrètement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ActiveSheet.ChartObjects("Graphique 1").Activate ActiveChart.Axes(xlValue, xlSecondary).AxisTitle.Select ActiveSheet.ChartObjects("Graphique 1").Activate- Pour le titre du graphique, j'ai pensé à mettre la feuille active comme étant la première, pour après ressortir le nom comme étant celui du graphique mais je n'ai pas réussi; Le code m'affiche une erreur qui indique "OBJET REQUIS" (j'ai essayé avec les deux lignes suivantes séparément)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ActiveWorkbook.ActiveSheet.Set Worksheet = Workbook.Worksheets(1) Set Worksheet = Workbook.Worksheets(1)- Pour la sélection des cellules, je pense mettre une sélection dans la feuille 1, mais je ne sais pas comment faire.
Si vous pouviez m'aider sur ce sujet, je vous en serais reconnaissant.
Merci d'avance
Partager