Bonjour,

J’ai créé un graphique. Ce dernier vient s’alimenter dans un tableau de données qui contient x lignes. J’indique au tableau la ligne à laquelle il doit prendre les infos à m’afficher par l’intermédiaire d’une inputbox.

Ce tableau est alimenté par une autre macro. Le nombre de ligne de ce dernier varie donc constamment.

J’ai bidouillé un peu et voila ce que cela donne :

Mon premier code qui permet de créer une première fois le tableau
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 Creer_Graphique_Evolutif_Initialiser()
 
Dim Statut As Range
 
Set Statut = Worksheets("Graphique").Range("C34")
 
    Worksheets("Graphique").Range("A35:C57").ClearContents
    Worksheets("Graphique").Range("C35:C57").Interior.ColorIndex = xlNone
 
    Worksheets("Graphique").ChartObjects("Graphique 15").Activate
    ActiveChart.ChartArea.Select
    ActiveChart.SeriesCollection(1).Delete
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).Values = Sheets("Masque_Un").Range("B1:M1")
    ActiveChart.SeriesCollection(1).Name = Sheets("Masque_Un").Range("A1")
    ActiveChart.SeriesCollection(2).Values = Sheets("Masque_Un").Range("N1:Y1")
    ActiveChart.SeriesCollection(2).Name = "Moyenne Mensuelle"
    ActiveChart.SeriesCollection(3).Values = Sheets("Masque_Un").Range("Z1:AK1")
    ActiveChart.SeriesCollection(3).Name = "Moyenne Annuelle"
    ActiveChart.SeriesCollection(1).XValues = "=Masque_Un!R1C2:R1C13"
 
    Worksheets("Accueil").Activate
 
End Sub

Une fois le graphique créé, j’ai a coté de ce dernier une liste générée par macro qui me dit « si tu veux connaître la quantité de bonbons tapes 1, de sucre tapes 2… et la macro correspondante (une macro qui ne sert qu’a indiquer a mon graphique dans quelle ligne du tableau il doit chercher l’info)

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
 
Sub Modifier_Graphique_Evolutif()
 
 
Dim Nombre As Range
Dim Statut As Range
Dim i As Integer
 
Dim compteur As Integer
 
Set Nombre = Worksheets("Graphique").Range("A34")
 
 
    While Nombre.Offset(compteur) <> ""
    compteur = compteur + 1
    Wend
 
Set Statut = Worksheets("Graphique").Range("C34")
 
    Range("C35:C57").ClearContents
    Range("C35:C57").Interior.ColorIndex = xlNone
 
MaLigneDeDepart = InputBox("Veuillez entrer le numéro correspond a la ligne que vous souhaitez visualiser", "LIGNE", 1)
 
    If MaLigneDeDepart >= compteur Then
 
    A = MsgBox("Entrez un numéro qui correspond à une ligne!", vbExclamation, "ATTENTION")
    Exit Sub
 
        ElseIf MaLigneDeDepart = "0" Then
 
    A = MsgBox("Entrez un numéro qui correspond à une ligne!", vbExclamation, "ATTENTION")
    Exit Sub
 
      Else
      i = MaLigneDeDepart + 1
    End If
 
 
 
    ActiveSheet.ChartObjects("Graphique 15").Activate
    ActiveChart.ChartArea.Select
    ActiveChart.SeriesCollection(1).Delete
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).Values = Sheets("Masque_Un").Range("B" & i, "M" & i)
    ActiveChart.SeriesCollection(1).Name = Sheets("Masque_Un").Range("A" & i)
    ActiveChart.SeriesCollection(2).Values = Sheets("Masque_Un").Range("N" & i, "Y" & i)
    ActiveChart.SeriesCollection(2).Name = "Moyenne Mensuelle"
    ActiveChart.SeriesCollection(3).Values = Sheets("Masque_Un").Range("Z" & i, "AK" & i)
    ActiveChart.SeriesCollection(3).Name = "Moyenne Annuelle"
    ActiveChart.SeriesCollection(1).XValues = "=Masque_Un!R1C2:R1C13"
 
    Statut.Offset(i - 1).Interior.ColorIndex = 4
    Statut.Offset(i - 1) = "ACTIF"
    Statut.Offset(i - 1).Font.ColorIndex = 1
End Sub
Ce programme fonctionne bien sauf…
Je suis obliger de sélectionner la ligne 1 via mon inputbox avant de relancer la macro « Sub Creer_Graphique_Evolutif_Initialiser() »
Si je me trouve sur une autre ligne que la ligne 1, le programme plante au moment ou je réactualise l’ensemble (réactualisation qui lancer dans la foulée Sub Creer_Graphique_Evolutif_Initialiser() «

Je ne sais pas si je me fais comprendre ?
Quelqu’un peux m’aider ?

Merci d’avance pour votre aide.