Bonjour,

je me suis inspiré d'une macro de SilkyRoad :Exemple d'utilisation des ChartSpaces (05/2007)
pour afficher un graphique dans un userform
la macro fonctionne sans bugger... une gajeur pour moi
Elle ne fait cependant ce que je veux :
afficher une courbe pour les valeurs données à chacune des dates

Les 2 array tag and dailyPnl sont correctement initialisé
Je visualise un graphique qui fait apparaitre 12 entré seulement
la première date est le 1/1/2007 or tout ma serie commence le 2/1/2007
le ne retrouve pas mes valeurs

Il doit y avoir un truc bête que j'ai oublié quelque part
merci de votre aide



Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
	Range(StDfirstR).Select
        IdateRow = Range(StDfirstR).Row
        ReDim Tag(0 To IcountOc - 1)
        For i = 0 To (IcountOc - 1)
            Tag(i) = Cells(IdateRow + i, Ifiledate)
        Next i
 
'...
'Définit le type de graphique
    If SGlobalCreditTog.Caption = "Daily Pnl history" Then
    'line daily Pnl history
     Cht.Type = C.chChartTypeLineStacked
        Else
        'daily Pnl distribution
        Cht.Type = C.chChartTypeColumnClustered3D
    End If
 
'Récupération des ordonnées pour chaque série
	ReDim DailyPnl(0 To IcountOc - 1)
        For i = 0 To (IcountOc - 1)
            DailyPnl(i) = Cells(IdateRow + i, IdailyPnl)
        Next i
 
	With Cht
            'Ajoute le tag d'abscisses
            .SetData C.chDimCategories, C.chDataLiteral, Tag
            'Ajoute la légenge pour chaque serie
            .SeriesCollection(0).Caption = "Pnl Series" & SHiarchyKey
            'Affiche valeur de chaque point
            .SeriesCollection(0).DataLabelsCollection.Add
            'Définit la position des valeurs affichées (au dessus par défaut)
                'Dans la barre pour cet exemple
            .SeriesCollection(0).DataLabelsCollection(0).Position = chLabelPositionCenter
            'Les valeurs de l'histogramme seront affichées en couleur blanche.
            .SeriesCollection(0).DataLabelsCollection(0).Font.Color = RGB(255, 255, 255)
            'Ajoute le tag d'ordonnées ( DailyPnl() )
            .SeriesCollection(0).SetData C.chDimValues, C.chDataLiteral, DailyPnl
            'Définit la couleur de la série
            .SeriesCollection(0).Interior.Color = 500
        End With