bonjour, je réalise un graphique ayant une échelle de temps en abscisse. Je souhaite pouvoir indiquer graphiquement par une barre en pointillé la derniere date de mise à jour.
Mon echelle de temps est présente dans mon jeu de données. Les données de références vont du début à la fin de léchelle de temps. Par contre les données qui évoluent au fur et à mesure du temps doivent avoir come indicateur graphique un trait en pointillé vertical se calant sur la date de mise à jour.
J'utilise comme type de graphique => xlXYScatterSmooth
PS: J'ai également besoin d'insérer une bissectrice dans mon graphique.
Merci beaucoup d'avance pour votre aide!
Voila les données :
Référence 0 0,1 0,2 0,3 0,4 0,5 0,6 0,65 0,7 0,75 0,8 0,9 1
Données 0 0,1 0,2 0,3 0,45 0,5 0,55 0,6 0,7 0,8 0,88
Temps 10/9/07 1/10/07 1/11/07 1/12/07 1/1/08 1/2/08 1/3/08 1/4/08 1/5/08 1/6/08 1/7/08 1/8/08 1/9/08
Voila le code qui me permet de générer le graphique :
En gros ce que je voudrais c'est afficher un trait vertical en pointillé faisant la taille de l'axe des ordonnées a l'endroit de la derniere mise à jour, dans ce cas précis => 1/7/08
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 Dim Grph As ChartObject Worksheets("Feuil2").ChartObjects.Delete Application.ScreenUpdating = False With Charts.Add .Name = "Graphique 1" .ChartType = xlXYScatterSmooth .SetSourceData Source:=Sheets("Feuil2").Range("C21") .SeriesCollection.NewSeries .SeriesCollection.NewSeries .SeriesCollection(1).XValues = "=Feuil2!R8C3:R8C15" .SeriesCollection(1).Values = "=Feuil2!R6C3:R6C15" .SeriesCollection(1).Name = "=""Ref""" .SeriesCollection(2).XValues = "=Feuil2!R8C3:R8C15" .SeriesCollection(2).Values = "=Feuil2!R7C3:R7C15" .SeriesCollection(2).Name = "=""Avancement""" .HasTitle = True .ChartTitle.Characters.Text = "Courbe en S" .Axes(xlCategory, xlPrimary).HasTitle = False .Axes(xlValue, xlPrimary).HasTitle = False .Location Where:=xlLocationAsObject, Name:="Feuil2" End With ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScaleIsAuto = True .MaximumScale = 1 .MinorUnitIsAuto = True .MajorUnitIsAuto = True .Crosses = xlAutomatic .ReversePlotOrder = False .ScaleType = xlLinear .DisplayUnit = xlNone End With
, derniere date contenant une valeur.
Je sais que j'en demande beaucoup, je n'ai pas l'habitude de faire ca....
Merci !!






Répondre avec citation
Partager