Superposer des graphes et puis en faire la moyenne
dave2047
Messages postés12Date d'inscriptionmercredi 12 janvier 2005StatutMembreDernière intervention 7 octobre 2005
-
9 févr. 2005 à 09:11
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 2009
-
9 févr. 2005 à 15:24
voila mon code pr tracer un graphe et jaimerai savoir le code pour superposer des graphes.
merci
'puissance
Public Sub courbe_de_puissance()
Dim mongraphe As Chart
Dim macourbe As Series
Dim ll_LigneDebut As Long
Dim ll_LigneFin As Long
Dim ls_SheetName As String
ll_LigneDebut = 3
ll_LigneFin = Worksheets("brouillon").Cells(1, 1) - 1
ls_SheetName = "moyenne"
Set mongraphe = ThisWorkbook.Charts.Add
Set macourbe = mongraphe.SeriesCollection.NewSeries
With mongraphe
'Type de graphique
.ChartType = xlXYScatterSmooth
With mongraphe.Axes(xlValue)
.MinimumScale = 0
.MaximumScale = 600
End With
With macourbe
'Plage pour les abscisses
.XValues = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C1:R" & ll_LigneFin & "C1"
'Plage pour l'ordonnée
.Values = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C7:R" & ll_LigneFin & "C7"
End With
'Titre des abscisses
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "régime"
'Titre des ordonnées
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "puissance"
'Titre du graphique
.HasTitle = True
.ChartTitle.Text = "courbe de puissance"
End With
End Sub
A voir également:
Superposer des graphes et puis en faire la moyenne
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 9 févr. 2005 à 11:50
Pour rajouter d'autres courbes, tu reprends ce que tu as déjà fait en modifiant la plage des ordonnées
Set macourbe = mongraphe.SeriesCollection.NewSeries
With macourbe
'Plage pour les abscisses
.XValues = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C1:R" & ll_LigneFin & "C1"
'Plage pour l'ordonnée
.Values = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C6:R" & ll_LigneFin & "C6"
End With
Set macourbe = mongraphe.SeriesCollection.NewSeries
With macourbe
'Plage pour les abscisses
.XValues = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C1:R" & ll_LigneFin & "C1"
'Plage pour l'ordonnée
.Values = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C3:R" & ll_LigneFin & "C3"
End With
...
Pour la moyenne, le mieux c'est de poser une formule (=Moyenne(moyenne!A5:A7)) dans une autre colonne et de refaire un graphique en te basant sur cette colonne
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 9 févr. 2005 à 15:24
Sans problème. Le seul truc c'est de pouvoir définir quelle est la plage de données à utiliser en ordonnées à chaque itération.
Ex :
i=2
while i<10
Set macourbe = mongraphe.SeriesCollection.NewSeries
with maCourbe
If i = 2 Then
'Je pense qu'on peut définir l'axe des abscisse 1 seule fois, mais à vérifier
'Plage pour les abscisses
.XValues = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C1:R" & ll_LigneFin & "C1"
End If
'Plage pour l'ordonnée
.Values = _
"=" & ls_SheetName & "!R" & ll_LigneDebut & "C" & i & ":R" & ll_LigneFin & "C" & i
End With
i=i+1
wend