Tracer un graphe, erreur 1004

Signaler
Messages postés
13
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
18 juin 2010
-
Messages postés
13
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
18 juin 2010
-
Bonjour,

Ça fait deux bonnes heures que je me bat avec ça et je n'ai toujours pas trouvé de solution...

J'ai une macro qui a pour but de créer un graphe et de placer les points que je lui demande de placer. Le code simplifié ressemble à :
Public Sub Trace(ByVal sXval as String,ByVal sYval as String)
Charts.Add
With ActiveChart
    .ChartType = xlXYScatter
    .SeriesCollection.NewSeries
    .SeriesCollection(1).XValues = "=" & sXval
    .SeriesCollection(1).Values = "=" & sYval
End With
End Sub

Ça marche bien jusqu'à
.SeriesCollection(1).XValues = "=" & sXval

A ce moment : "Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet. "
A priori l'erreur n'est pas sur sXval, puisque même quand je le remplace par la chaine que je copie d'une macro enregistrée, j'ai le même message.

Quelqu'un pourrait-il m'aider ?

Merci d'avance !

3 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Bonjour,

2 réflexions sur ton :

    .SeriesCollection(1).XValues = "=" & sXval
    .SeriesCollection(1).Values = "=" & sYval


1) Est-ce normal d'essayer de définir 2 fois de suite la même suite... Tous les deux ont le numéro (1) ?
2) Est-ce normal que les propriétés soient écrites différemment : .XValues et .Values ?

Amicalement,
Us.
Messages postés
1
Date d'inscription
vendredi 30 avril 2010
Statut
Membre
Dernière intervention
17 juin 2010

Tout le monde va savoir qui sera
Messages postés
13
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
18 juin 2010

Bonjour Us,

Merci pour ta réponse.
C'est la première fois que je trace des graphes avec des macros et ne connais pas trop les propriétés associées.
Pour écrire les SeriesCollection je me suis inspiré d'une macro enregistrée en faisant :
[list]
Nouvelle série
Sélection des valeurs en X
Sélection des valeurs en Y
/list
Ce qui me renvoie le code :
Sub Macro1()
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).XValues = _
        "='DATA'!$D$164;'DATA'!$D$168;'DATA'!$D$172;'DATA'!$D$176"
    ActiveChart.SeriesCollection(1).Values = _
        "='DATA'!$G$164;'DATA'!$G$168;'DATA'!$G$172;'DATA'!$G$176"
End Sub

J'en déduis qu'en prenant
SeriesCollection(1).XValues = ... 
SeriesCollection(1).Values = ... 

on définit respectivement les valeurs en X et en Y de la série 1. Non ?

Mon graphe est tracé (manuellement, pas de problème). MAIS je n'arrive même pas à ré-exécuter cette macro (même en supprimant préalablement la série créée manuellement) et j'ai la même erreur 1004 qu'avec ma macro du début...

Merci d'avance pour votre aide !