Bonjour,
J'ai un petit souci voilà j'ai fais un dev pour créer une série de graph en fonction des valeurs saisies dans des cellules de ma feuille excel.
Voici le code :

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
 
 
Sub Macro()
 
    r = Cells(10, 2)
    U = Cells(12, 2)
    Z = U + Cells(9, 2)
    i = Cells(11, 2)
    pt = Cells(19, 2)
    pas = Cells(20, 2)
 
 
    extrememini = Cells(12, 2) + Cells(9, 2) - Cells(15, 2)
    extrememaxi = Cells(12, 2) + Cells(9, 2) + Cells(15, 2)
 
    Charts.Add
    ActiveChart.ChartType = xlXYScatter
    ActiveChart.SetSourceData Source:=Sheets("Feuil1").Range("F11")
 
 
    For N = 0 To i - 1
    i = Z + N * r
    tmini = extrememini + N * r
    tmaxi = extrememaxi + N * r
    tete = pt + N * pas
' c'est la partie qui suit qui ne va pas , j'ai vérifié pas à pas...dans ma prémier boucle j'ai bien mes 4 droites. Le problème vient dans les boucles suivantes, je ne garde pas les droites( il y a un écrasement des droite créee à la prémier boucle, après réflexion la valeur entre parenthéze (N+1) "ActiveChart.SeriesCollection(N + 1)". doit être unique pour chaque droite jusqu'a la fin de la boucle, je n'ai pas trouvé la solution pour donner une identité unique à mes droites jusqu'a la fin de ma boucle for


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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
 
ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(N + 1).XValues = Array(i, i)
    ActiveChart.SeriesCollection(N + 1).Values = Array(0, 2)
    ActiveChart.SeriesCollection(N + 1).Name = "=""panne" + CStr(N + 1) + """"
 
 
    ActiveChart.SeriesCollection(N + 2).XValues = Array(tmini, tmini)
    ActiveChart.SeriesCollection(N + 2).Values = Array(0, 2)
    ActiveChart.SeriesCollection(N + 2).Name = "=""Mini" + CStr(N + 1) + """"
 
 
    ActiveChart.SeriesCollection(N + 3).XValues = Array(tmaxi, tmaxi)
    ActiveChart.SeriesCollection(N + 3).Values = Array(0, 2)
    ActiveChart.SeriesCollection(N + 3).Name = "=""Maxi" + CStr(N + 1) + """"
 
 
    ActiveChart.SeriesCollection(N + 4).XValues = Array(tete, tete)
    ActiveChart.SeriesCollection(N + 4).Values = Array(0, 2)
    ActiveChart.SeriesCollection(N + 4).Name = "=""Tête" + CStr(N + 1) + """"
 
    ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
    ActiveChart.HasLegend = True
    ActiveChart.Legend.Select
    Selection.Position = xlRight
 
 
 
    ActiveChart.SeriesCollection(N + 1).Select
    With Selection.Border
        .ColorIndex = 1
        .Weight = xlHairline
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = xlAutomatic
        .MarkerForegroundColorIndex = xlAutomatic
        .MarkerStyle = xlAutomatic
        .Smooth = True
        .MarkerSize = 3
        .Shadow = False
    End With
 
    ActiveChart.SeriesCollection(N + 2).Select
    With Selection.Border
        .ColorIndex = 8
        .Weight = xlHairline
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = xlAutomatic
        .MarkerForegroundColorIndex = xlAutomatic
        .MarkerStyle = xlAutomatic
        .Smooth = True
        .MarkerSize = 3
        .Shadow = False
    End With
 
    ActiveChart.SeriesCollection(N + 3).Select
    With Selection.Border
        .ColorIndex = 8
        .Weight = xlHairline
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = xlAutomatic
        .MarkerForegroundColorIndex = xlAutomatic
        .MarkerStyle = xlAutomatic
        .Smooth = True
        .MarkerSize = 3
        .Shadow = False
    End With
 
    ActiveChart.SeriesCollection(N + 4).Select
    With Selection.Border
        .ColorIndex = 6
        .Weight = xlHairline
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = xlAutomatic
        .MarkerForegroundColorIndex = xlAutomatic
        .MarkerStyle = xlAutomatic
        .Smooth = True
        .MarkerSize = 3
        .Shadow = False
    End With    
 
    Next N
 
 
 
End Sub