Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/10/2011, 15h52   #1
Futur Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 85
Points : 18
Points : 18
Par défaut Problème XValues pour dessiner un graphe

Bonjour, j'ai une application exécutable sur Office 2003 et quand je l'ai testé sous office 2010 j'ai eu un probleme pour dessiner un graphe:
Code :
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
'
' Cette routine permet d'ajouter une courbe au graphique
'
'-------------------------------------------------------
Public Sub addCurve(ByVal nomSerie As String, _
                    ByRef rgAbsc As String, _
                    ByRef rgOrd As String)
 
    Dim nouvSerie As Series
 
    On Error GoTo GestErr:
'   Ajout d'une nouvelle série de données (i.e. une courbe)
    Set nouvSerie = clsGP.GPChartSC.NewSeries
 
'   Affectation des 3 caractéristiques : Nom, Abscisse, Ordonnée
    With nouvSerie
    .Name = nomSerie
    .XValues = rgAbsc
    .Values = rgOrd
' début modif oler 256+
    .Border.LineStyle = xlContinuous
' fin modif oler 256+
    End With
 
    With nouvSerie.Border
    .ColorIndex = 5           ' bleu
    .Weight = xlMedium
    .LineStyle = xlContinuous
    End With
 
 
    With nouvSerie
    .MarkerBackgroundColorIndex = xlNone
    .MarkerForegroundColorIndex = xlNone
    .MarkerStyle = xlNone
    .Smooth = True
    .MarkerSize = 3
    .Shadow = False
    End With
 
    Exit Sub
 
GestErr:
 
    MsgBox "addCurve: Erreur N°" & Err.Number & vbCrLf & Err.Description, vbCritical, "Erreur"
 
End Sub
lors de l'exécution l'erreur est : addCurve:Erreur 1004
et quand j'ai éxécuté pas à pas j'ai constaté qu'il se bloque en :
Code :
1
2
.XValues = rgAbsc
.Values = rgOrd
Merci Pour votre aide

Je pense que le probleme est dans l'appel de la fonction parce que :
- la 2eme variable: 20;21;22;23;24;...;60
- la 3eme variable: 35420;35430;...;35780
hebh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/10/2011, 14h39   #2
Futur Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 85
Points : 18
Points : 18
C'est pas clair ou pas de réponse?!!!

XValues ne prend pas les valeurs que je l'affecte et Values aussi.

SVP j'attends votre aide

Please
hebh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2011, 12h00   #3
Futur Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 85
Points : 18
Points : 18
Bonjour,

Toujours pas dé réponse
voila le code qui appele la fonction:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Public Sub Tracer_GP_COURBE()
    Dim ii As Single
    Dim strAges As String
    Dim strRemuns As String
 
    On Error GoTo GestErr:
 
    With GP_COURBES
    For ii = 1 To .NbCourbes
        strAges = Join(.Courbes(ii - 1).Ages, ";")
        strRemuns = Join(.Courbes(ii - 1).Remuns, ";")
        Call addCurve(.Libelle & " " & ii, strAges, strRemuns)
    Next ii
    End With
 
    Sh_Graphe.Cells(5, 3) = "Courbe de référence : " & GP_COURBES.Libelle
 
    Exit Sub
 
GestErr:
 
    MsgBox "Tracer_GP_COURBE: Erreur N°" & Err.Number & vbCrLf & Err.Description, vbCritical, "Erreur"
 
End Sub
hebh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2011, 12h38   #4
Expert Confirmé Sénior
 
Avatar de mercatog
 
Inscription : juillet 2008
Messages : 5 848
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 5 848
Points : 13 907
Points : 13 907
Bonjour
Tu n'as pas eu encore de réponses parce que ta demande n'est pas claire et les forumistes ne vont certainement pas deviner où tu bloque.
Tu nous montre des bouts de ton code, c'est déjà bien, mais d'une manière incomplète
Exemple certaines variables sont elles publics, instanciées quelque part: GP_COURBES, Sh_Graphe....

Tu dis que sur 2003 ça fonctionne mais le problème vient du 2010.
As tu compilé ton projet sur 2010?
As tu fais le pas à pas sur 2010?
__________________
Cordialement.
mercatog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2011, 14h49   #5
Futur Membre du Club
 
Inscription : février 2006
Messages : 85
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 85
Points : 18
Points : 18
merci bcp pour ta réponse, au début je savais pas ou se bloque mais mnt je peux dire que c'est à l'appel de la fonction addcurve.
xvalues et values ne prennent pas les données.
cette apllication est exécutable sur office 2003 et je dois la migrer sur office 2010.
je l'ai bien compilé mais l'erreur c'est à l'exécution.

Code :
1
2
3
4
5
6
7
8
9
 
Public Type GP_COURBE_REF
    ID As String
    Libelle As String
    Courbes() As GP_DONNEES
    NbCourbes As Single
End Type
 
Public GP_COURBES As GP_COURBE_REF
hebh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2011, 16h28   #6
Expert Confirmé Sénior
 
Avatar de mercatog
 
Inscription : juillet 2008
Messages : 5 848
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 5 848
Points : 13 907
Points : 13 907
Xvalues et Values devraient être des plages ou des tableaux (cf aide)
Series.Values, propriété:
Citation:
La valeur de cette propriété peut être une plage d'une feuille de calcul ou d'un tableau de constantes, mais pas d'une combinaison des deux. Pour plus d'informations, voir les exemples.
Series.XValues, propriété
Citation:
Cette propriété renvoie ou définit un tableau de valeurs X pour une série dans un graphique. Vous pouvez définir la propriété XValues sur une plage située dans une feuille de calcul ou celle d'un tableau de valeurs, mais pas un mélange des deux. Type de données Variant en lecture-écriture.
__________________
Cordialement.
mercatog est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h14.


 
 
 
 
Partenaires

Hébergement Web