Bonjour, et bonne année à toutes et à tous
Je viens de créer une macro qui me permet de générer un graphique sur la feuille sélectionné.
Il ne retourne aucune erreur, mais il créé 2 fois plus de série que nécessaire, la première moitié avec ce que je veux, l'autre moitié vide de donnée.
Voici le codeAvez-vous une idée de la raison qui pourrait conduire à cet effet ?
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 Sub CreationGraph() Dim i, LastCol, LastRow As Integer Dim NomFeuille As String LastCol = ActiveSheet.Cells(1, Columns.Count).End(xltoLeft).Column LastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row NomFeuille = ActiveSheet.Name ActiveSheet.Shapes.AddChart2(240, xlXYScatterLinesNoMarkers).Select For i = 2 to LastCol ActiveChart.SeriesCollection.NewSeries ActiveChart.FullSeriesCollection(i - 1).Name = "='" & NomFeuille & "'!$" & Col2Let(i) & "$1" ActiveChart.FullSeriesCollection(i - 1).XValues = "='" & NomFeuille & "'!$A$2:$A$" & LastRow ActiveChart.FullSeriesCollection(i - 1).Values = "='" & NomFeuille & "'!$" & Col2Let(i) & "$2:$" & Col2Let(i) & "$" & LastRow Next i ActiveChart.SetElement (msoElementLegendBottom) ActiveChart.SetElement (msoElementPrimaryCategoryAxisTitleAdjacentToAxis) ActiveChart.SetElement (msoElementPrimaryValueAxisTitleAdjacentToAxis) ActiveChart.ChartTitle.Text = NomFeuille End Sub Public Function Col2Let(ByVal numCol As Long) As String Col2Let = Split(Cells(, numCol).Address, "$")(1) End Function
J'ai déjà vérifié la variable "LastCol" qui renvoie la bonne valeur, et la boucle fait le bon nombre de passage.
Aussi, en complément, pourquoi le titre de l'axe Y ne s'affiche pas ?
Merci d'avance.
Partager