Faire un graphique macro excel

Résolu
mister-t -  
 mister-t -
Bonjour,

j'ai un petit probleme avec une macro. Celle ci fait apparaitre un graphe dans une feuille puis dans une userform

les données du graphe sont:
A19:A50 valeurs en abscisse
F19:F50 valeurs en ordonnées

serie 1

A19:A50 valeurs en abscisse
I19:I50 valeurs en ordonnées

serie 2

Le souci vient du code de: ActiveChart.SeriesCollection(2).Name = "=""Moyenne"""

La methode seriecollection de l'objet chart a echoué

Peut etre que le graphe ne se réalise pas comme il le faudrait ?

je vous met le code:

Sub graphique()

Dim annee, mois As String

annee = UserForm7.ComboBox2.Value
mois = UserForm7.ComboBox1.Value

If mois = "01" Then

Range("A19:A50,F19:F50,I19:I50").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmooth
ActiveChart.SetSourceData Source:=Sheets(annee).Range("A19:A50,F19:F50"), _
PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Kilometrage"""
ActiveChart.SetSourceData Source:=Sheets(annee).Range("A19:A50,I19:I50"), _
PlotBy:=xlColumns
ActiveChart.SeriesCollection(2).Name = "=""Moyenne"""

ActiveChart.Location Where:=xlLocationAsNewSheet
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Mois"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Jours"
.Axes(xlValue, xlPrimary).HasTitle = False
.Export _
Filename:="D:\Roger\Dossier personnel\Vélo\Graphes\janvier.gif", filtername:="GIF"
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True

End With

Image1.Picture = LoadPicture("D:\Roger\Dossier personnel\Vélo\Graphes\janvier.gif")
End If

End Sub

Merci pour les réponses a venir
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  1. mikebzh Messages postés 135 Statut Membre 28
     
    Coucou

    ActiveChart.SeriesCollection(2).Name = "=""Moyenne"""

    En fait, il doit te prendre seulement ............... .Name = "=", il faut que tu protèges les caractères spéciaux ou tu fais une chaine de caractère du style
    titre$ = "=" & chr$(34) & "Moyenne" & chr$(34) titre$ vaudra alors ="Moyenne"
    ...... .Name = titre$

    Ou alors moyenne étant une fonction, cela peut mettre l'ordi en bourrique

    A plus
    0
    1. mister-t
       
      Salut a toi et merci pour cette premiere réponse

      J'ai essayé de faire une chaine de caractère comme tu me l'as indiqué mais malheureusement ce n'est pas la solution
      le compilateur me répond toujours le meme message d'erreur

      en fait j'ai remarqué que cela peut peut etre venir de

      Activechart.seriescollection(2). name..............

      une autre solution peut etre
      merci
      0
      1. mister-t > mister-t
         
        En fait si je met un 1 dans
        Activechart.seriescollection(1).name=titre$
        alors il me trace bien la courbe avec comme legende Moyenne mais efface l'autre qi s'appelle kilometrage

        je pense qu'il ne trouve pas les données de la série 2

        peut etre il faut voir la dessus
        merci
        0
      2. mister-t > mister-t
         
        je me reponds a moi meme

        il suffisait de definir correctement les données source de la seriecollection 2 dans

        sourcedata

        voila probleme resolu
        0