Problème Création/ modification graphique
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:
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:
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.