Graph ne s'affichent pas [Résolu]

Signaler
Messages postés
15
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 juin 2009
-
Messages postés
15
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 juin 2009
-
Bonjour,
J'essaie d'appliquer un code vba qui me permet de générer des graphiques sans réellement créer de requête (c'etait là tout l'objet de ce petit tour de passe passe). Ce code marche lorqu'il s'agit d'un seul graph, mais je n'arrive pas à l'adapter, pour qu'il marche dans un formulaire contenant plusieurs graphiques (une vingtaine).
Pour l'instant je l'ai tester sur 3 graph. Il ne m'affichent correctement qu'un seul graph sur les trois. Et pour les deux autres, il n'actualise pas les données. J'aimerais bien comprendre pourquoi, et s'il y'a un moyen de corriger ce problème.

Voici le code en question :

Private Sub Commande35_Click()

Dim SQLCmd1 As New DAO.QueryDef
Dim SQLCmd2 As New DAO.QueryDef
Dim SQLCmd3 As New DAO.QueryDef

SQLCmd1.SQL = "SELECT PROTOS_TAB_POSTES.DAT, PROTOS_TAB_POSTES.CP_SANMO, PROTOS_TAB_POSTES.CP_SURTA"
SQLCmd1.SQL = SQLCmd1.SQL + " FROM PROTOS_TAB_POSTES"
SQLCmd1.SQL = SQLCmd1.SQL + " WHERE (PROTOS_TAB_POSTES.DAT between (#" & Me.date_deb & "#) AND (#" & Me.date_fin & "#)) AND ((PROTOS_TAB_POSTES.COD_CUV)=(""" & Me.CUVE & """))"
Graphique10.RowSource = SQLCmd1.SQL

SQLCmd2.SQL = "SELECT PROTOS_TAB_POSTES.DAT, PROTOS_TAB_POSTES.CP_WRMI"
SQLCmd2.SQL = SQLCmd1.SQL + " FROM PROTOS_TAB_POSTES"
SQLCmd2.SQL = SQLCmd1.SQL + " WHERE (PROTOS_TAB_POSTES.DAT between (#" & Me!date_deb & "#) AND (#" & Me!date_fin & "#)) AND ((PROTOS_TAB_POSTES.COD_CUV)=(""" & Me.CUVE & """))"
Graphique21.RowSource = SQLCmd2.SQL

SQLCmd3.SQL = "SELECT PROTOS_TAB_POSTES.DAT, PROTOS_TAB_POSTES.CP_II, PROTOS_TAB_POSTES.CP_TNA"
SQLCmd3.SQL = SQLCmd3.SQL + " FROM PROTOS_TAB_POSTES"
SQLCmd3.SQL = SQLCmd3.SQL + " WHERE (PROTOS_TAB_POSTES.DAT between (#" & Me!date_deb & "#) AND (#" & Me!date_fin & "#)) AND ((PROTOS_TAB_POSTES.COD_CUV)=(""" & Me.CUVE & """))"
Graphique28.RowSource = SQLCmd2.SQL

Me.Graphique21.Requery
Me.Graphique28.Requery
Me.Graphique10.Requery
End Sub

Voilà, j'avais déja tester de mettre Dim SQLCmd1 As string, j'obtenais exactement le même résultats.
Est ce qu'on peut appliquer un recordset (dont je n'arrive pas à comprendre comment ça marche) à ce type de problème???

merci d'avance pour toute réponse.

3 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
s'il suffit de transmettre un String (SQL) à la rowsource d'un graphique (quel type est-ce exactement ?)

inutile de te prendre la tête avec des QueryDef ...

un très bon tuto:
http://argyronet.developpez.com/office/access/makecharts/
Messages postés
15
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 juin 2009

J'avais fait quelques fautes dans mon code, c pour ça que ça marchait pas, le problème a été corrigé. Mais mon plus gros soucis reste de vider la source avant la réouverture du formulaire, de sorte que rien ne s'affiche à l'ouverture.
Messages postés
15
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 juin 2009

Merci quand meme renfield. On n'est plus sur le même problème je me rend compte, parce que j'ai déjà poster ce problème dans une autre discussion donc je vais cloturer celle là.