Coloration de point dans un graphique

Résolu
nyxxx Messages postés 3 Date d'inscription jeudi 25 mars 2004 Statut Membre Dernière intervention 3 août 2005 - 1 août 2005 à 14:15
nyxxx Messages postés 3 Date d'inscription jeudi 25 mars 2004 Statut Membre Dernière intervention 3 août 2005 - 3 août 2005 à 13:48
Salut à tous,
j'ai un ptit problème avec un graphique sur Excel
pour le moment j'ai réussi à afficher des informations dans la statusbar quand je passe au dessus d'un point, j'ai réussi aussi à gérer un évenement quand je clique sur un point. Mais je n'arrive pas à colorier le point sur lequel j'ai cliqué.

With Worksheets("nomFeuille").ChartObjects(1).Charts.SeriesCollection(1)
.MarkerBackgroundColor = RGB(0, 0, 255)
End With

avec ça j'arrive à colorier tous les points.

j'ai essayé : Worksheets("nomFeuille").ChartObjects(1).Charts.SeriesCollection(1).Points(5).MarkerBackgroundColorIndex = 3
mais ça ne marche pas, de plus je n'arrive pas à identifier le point sur lequel j'ai cliqué.

Merci d'avance pour vos réponses.
nyxxx

2 réponses

nyxxx Messages postés 3 Date d'inscription jeudi 25 mars 2004 Statut Membre Dernière intervention 3 août 2005
3 août 2005 à 13:48
J'ai réussi à me débrouiller, je mets quand même ma solution au cas où quelqu'un tombe sur le même problème un jour :

Private Sub Graph_MouseUp(ByVal Button As Long, _
ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
Dim ElementID As Long, SeriesIndex As Long, PointIndex As Long
Dim S As Series, I As Integer, J As Integer, Form As String
Dim CellX As Range, CellY As Range

ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.SeriesCollection(1).Select
ActiveChart.SeriesCollection(1).Points(cpt).Select
'pour cpt, je vais chercher la ligne, correspondant au point, dans la feuille où je stoque mes données
With Selection.Border
.Weight = xlHairline
.LineStyle = xlNone
End With
With Selection
.MarkerBackgroundColorIndex = 5
.MarkerForegroundColorIndex = 5
.MarkerStyle = xlDiamond
.MarkerSize = 5
.Shadow = False
End With
Exit Sub
erreur:
If (MsgBox("attention, erreur dans la saisie de la valeur", vbCritical, "ERREUR") = vbOK) Then
End If
End Sub
3
nyxxx Messages postés 3 Date d'inscription jeudi 25 mars 2004 Statut Membre Dernière intervention 3 août 2005
2 août 2005 à 10:50
up ;)
0
Rejoignez-nous