Bonjour,
J'ai un classeur qui a plusieurs onglets "Run1", "Run2", "Run3" qui comportent tous le même formalisme. Je voudrais faire un graphique avec plusieurs séries avec en abscisse la B7:B307 de n'importe quel onglet et en ordonnée D7307 de plusieurs onglets.
Pour cela, j'ai un Userform qui me permet de choisir les onglets que je veux utiliser pour faire le graphique. Ca alimente une liste.
Mais je n'arrive pas à alimenter les sources du graphique avec cette liste. C'est-à-dire que les éléments de la liste soient reconnus comme onglet.
Voici mon code qui pose problème, il aime pas que je remplace 'Run 1' par Me.listBox2.List(i,0)
:
Voilà le code total:
Pourriez vous m'aider?
Je vous remercie à l'avance,
J'ai un classeur qui a plusieurs onglets "Run1", "Run2", "Run3" qui comportent tous le même formalisme. Je voudrais faire un graphique avec plusieurs séries avec en abscisse la B7:B307 de n'importe quel onglet et en ordonnée D7307 de plusieurs onglets.
Pour cela, j'ai un Userform qui me permet de choisir les onglets que je veux utiliser pour faire le graphique. Ca alimente une liste.
Mais je n'arrive pas à alimenter les sources du graphique avec cette liste. C'est-à-dire que les éléments de la liste soient reconnus comme onglet.
Voici mon code qui pose problème, il aime pas que je remplace 'Run 1' par Me.listBox2.List(i,0)
:
Code:
ActiveChart.SeriesCollection(i).Values = "='Me.ListBox2.List(i,0), 6)'!R7C4:R307C4"
Voilà le code total:
Code:
Private Sub CommandButton2_Click()
Charts.Add
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=Sheets("Feuil2").Range("J33"), PlotBy:= _
xlColumns
ActiveChart.SeriesCollection(1).XValues = "='Me.ListBox2.List(1,0)'!R7C2:R307C2"
For i = 0 To Me.ListBox2.ListCount - 1
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(i).Values = "='Me.ListBox2.List(i,0), 6)'!R7C4:R307C4"
i = i + 1
Next i
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:= _
"Bidouillegraphique1"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Sécrétion EC en fonction du temps"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Jours"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Sécrétion EC µg/ml"
.DisplayBlanksAs = xlInterpolated
.PlotVisibleOnly = True
.SizeWithWindow = False
End With
Application.ShowChartTipNames = True
Application.ShowChartTipValues = True
End Sub
Pourriez vous m'aider?
Je vous remercie à l'avance,