Besoin d'explications pour un un code existant
PhenlKs
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
PhenlKs Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
PhenlKs Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Que je vous explique, j'ai un graphique avec 6 séries de données qui donne pour chacune le nombre d'heure en service (ce sont des véhicules) en fonction de la semaine.
Ce que je souhaiterai, c'est qu'en coloriant une des cellules d'une de mes séries, le point correspondant apparaisse sur la courbe et lui seul (c'est juste une ligne pour l'instant étant donné qu'il y a beaucoup de données).
Dans l'absolu il pourrait y avoir un point par courbe (il correspond à la dernière visite aux ateliers)
J'ai trouvé ce petit bout de code suite à mes pérégrinations sur internet, cependant il change la couleur d'une donnée selon la valeur (je crois):
Le problème étant que je ne comprends pas tout loin de là... Est-ce que vous pourriez le commenter et/ou expliquer la syntaxe.
Je donne le lien de la page, le code est tout en bas.
http://boisgontierjacques.free.fr/pages_site/graphiques.htm
Mes données sont sur une feuille "Relevés" et le graph sur la feuille "Graph AST".
Voilà ma situation donc si quelqu'un peut m'aider il est le bienvenue ! Et je reste à dispo pour tout éclaircissement supplémentaire.
Merci d'avance.
P.S: Je ne peux pas vous donner le fichier malheureusement.
Que je vous explique, j'ai un graphique avec 6 séries de données qui donne pour chacune le nombre d'heure en service (ce sont des véhicules) en fonction de la semaine.
Ce que je souhaiterai, c'est qu'en coloriant une des cellules d'une de mes séries, le point correspondant apparaisse sur la courbe et lui seul (c'est juste une ligne pour l'instant étant donné qu'il y a beaucoup de données).
Dans l'absolu il pourrait y avoir un point par courbe (il correspond à la dernière visite aux ateliers)
J'ai trouvé ce petit bout de code suite à mes pérégrinations sur internet, cependant il change la couleur d'une donnée selon la valeur (je crois):
Private Sub Chart_Select(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long) If ElementID = 3 And Arg2 > 0 Then x = Application.Index(ActiveChart.SeriesCollection(1).XValues, Arg2) y = Application.Index(ActiveChart.SeriesCollection(1).Values, Arg2) If Not Sheets(1).Cells(Arg2 + 1, 1).Comment Is Nothing Then Sheets(2).Shapes("monshape").TextFrame.Characters.Text = _ "Point: " & Arg2 & " x=" & x & " y=" & y & _ Chr(10) & Sheets(1).Cells(Arg2 + 1, 1).Comment.Text End If For i = 1 To ActiveChart.SeriesCollection(1).Points.Count ActiveChart.SeriesCollection(1).Points(i).Interior.ColorIndex = 36 Next i ActiveChart.SeriesCollection(1).Points(Arg2).Interior.ColorIndex = 4 End If End Sub
Le problème étant que je ne comprends pas tout loin de là... Est-ce que vous pourriez le commenter et/ou expliquer la syntaxe.
Je donne le lien de la page, le code est tout en bas.
http://boisgontierjacques.free.fr/pages_site/graphiques.htm
Mes données sont sur une feuille "Relevés" et le graph sur la feuille "Graph AST".
Voilà ma situation donc si quelqu'un peut m'aider il est le bienvenue ! Et je reste à dispo pour tout éclaircissement supplémentaire.
Merci d'avance.
P.S: Je ne peux pas vous donner le fichier malheureusement.
A voir également:
- Besoin d'explications pour un un code existant
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Comment créer un qr code - Guide
1 réponse
Bonjour,
Le plus simple pour commencer, lorsqu'on ne comprend pas à quoi sert une instruction dans le code, il suffit de la sélectionner puis de faire un "F1" (sur le clavier) pour afficher l'aide qui s'y rapporte....
Cela devrait grandement t'aider à comprendre le code.
Ensuite, si certains point restent obscurs.. n'hésites pas à revenir en nous indiquant exactement quelles lignes te posent problème.
Non.. comme indiqué juste au dessus du charte :
(et indique, dans le champ texte qui se situe dans le coin haut gauche du graph... les coordonnées du point sélectionné.
Pour te faire l’explication de ce code :
Fonction qui se déclenche lorsqu'on selectionne le graphique (qu'on clique dessus)
Coordonnées du point cliqué
Remplissage du champ "text" avec les coordonnées
Mettre dans la couleur code 36 (jaune) tous les points du graph
Mise en couleur code 4 (en vert) du point selectionné
Le plus simple pour commencer, lorsqu'on ne comprend pas à quoi sert une instruction dans le code, il suffit de la sélectionner puis de faire un "F1" (sur le clavier) pour afficher l'aide qui s'y rapporte....
Cela devrait grandement t'aider à comprendre le code.
Ensuite, si certains point restent obscurs.. n'hésites pas à revenir en nous indiquant exactement quelles lignes te posent problème.
J'ai trouvé ce petit bout de code suite à mes pérégrinations sur internet, cependant il change la couleur d'une donnée selon la valeur (je crois):
Non.. comme indiqué juste au dessus du charte :
On modifie la couleur du point séléctionné.
(et indique, dans le champ texte qui se situe dans le coin haut gauche du graph... les coordonnées du point sélectionné.
Pour te faire l’explication de ce code :
Private Sub Chart_Select
Fonction qui se déclenche lorsqu'on selectionne le graphique (qu'on clique dessus)
x = Application.Index(ActiveChart.SeriesCollection(1).XValues, Arg2) y = Application.Index(ActiveChart.SeriesCollection(1).Values, Arg2)
Coordonnées du point cliqué
If Not Sheets(1).Cells(Arg2 + 1, 1).Comment Is Nothing Then Sheets(2).Shapes("monshape").TextFrame.Characters.Text = _ "Point: " & Arg2 & " x=" & x & " y=" & y & _ Chr(10) & Sheets(1).Cells(Arg2 + 1, 1).Comment.Text End If
Remplissage du champ "text" avec les coordonnées
For i = 1 To ActiveChart.SeriesCollection(1).Points.Count ActiveChart.SeriesCollection(1).Points(i).Interior.ColorIndex = 36 Next i
Mettre dans la couleur code 36 (jaune) tous les points du graph
ActiveChart.SeriesCollection(1).Points(Arg2).Interior.ColorIndex = 4
Mise en couleur code 4 (en vert) du point selectionné
Les coordonnées du point, il faut aller cliquer dessus dans l'autre classeur ? Dans ce cas comment lancer la macro ? Je dois faire un bouton du coup ?
Et l'autre problème, c'est que je voudrais que seul le point sélectionné apparaisse sur ma courbe et pas les autres.. (sinon on ne voit même plus la courbe tellement il y a de points..)
Merci :)