Boucle et Graphiques
Mathilde
-
Mathilde -
Mathilde -
Bonjour,
je rencontre un problème concernant les boucles et les graphiques. Alors voilà, j'ai un nombre de fournisseurs qui peut varier. Je récupére le nombre de fournisseur grâce à la variable k. Ensuite j'ai fait une macro qui va me créer k tableaux. Dans mon fichier joint, le nombre de fournisseur est égale à k=7. Donc dans cet exemple j'ai 7 tableaux. Ces 7 tableaux vont rechercher les informations dont j'ai besoin ( cmdé réel,....). Tout ceci est automatique via d'autres onglets que j'ai supprimer pour confidentalité. Ma valeur K est recherchée automatiquement et la création de mes tableaux aussi. Je cherche à faire un graphique pour chaque tableau. Le type de graphique que je souhaite est : en Aire le cmdé et le réceptionné, en courbe la valeur cible. L'exemple de graphe que je souhaite est dans mon fichier ci-joint. Ma macro est dans le module qui se nomme : GraphiqueParFournisseur. J'ai réalisé un premier graphique juste avec le premier tableau. Je vous montre le bout de code :
Sheets("GraphiqueParFournisseur").Activate
Application.ScreenUpdating = False
Dercol = [IV1].End(xlToLeft).Column ' il faut mettre la première ligne du tableau, ici ligne 40
Colonne = Left(Columns(Dercol).Address(ReferenceStyle:=xlA1), InStr(1, Columns(Dercol).Address(ReferenceStyle:=xlA1), Chr(58), 1) - 1)
plageGraphique2 = "A2:" & Colonne & "4,A6:" & Colonne & "6"
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.SetSourceData Source:=Range(plageGraphique2)
ActiveChart.ChartType = xlArea
ActiveChart.SeriesCollection(1).Select
ActiveChart.ChartStyle = 2
'ActiveChart.SeriesCollection(1).Name = "Reste à Réceptionner"
ActiveChart.SeriesCollection(2).Select
ActiveChart.ChartStyle = 2
ActiveChart.SeriesCollection(3).ChartType = xlLine
Comment faire en sorte que k graphiques se crééent. Et que ma plage de données (plageGraphique2 ainsi que Dercol se décale) de 8 cellules à chaque boucle.
FICHIER:http://www.cjoint.com/c/EHyjEzCUiJ1
Merci d'avance!
je rencontre un problème concernant les boucles et les graphiques. Alors voilà, j'ai un nombre de fournisseurs qui peut varier. Je récupére le nombre de fournisseur grâce à la variable k. Ensuite j'ai fait une macro qui va me créer k tableaux. Dans mon fichier joint, le nombre de fournisseur est égale à k=7. Donc dans cet exemple j'ai 7 tableaux. Ces 7 tableaux vont rechercher les informations dont j'ai besoin ( cmdé réel,....). Tout ceci est automatique via d'autres onglets que j'ai supprimer pour confidentalité. Ma valeur K est recherchée automatiquement et la création de mes tableaux aussi. Je cherche à faire un graphique pour chaque tableau. Le type de graphique que je souhaite est : en Aire le cmdé et le réceptionné, en courbe la valeur cible. L'exemple de graphe que je souhaite est dans mon fichier ci-joint. Ma macro est dans le module qui se nomme : GraphiqueParFournisseur. J'ai réalisé un premier graphique juste avec le premier tableau. Je vous montre le bout de code :
Sheets("GraphiqueParFournisseur").Activate
Application.ScreenUpdating = False
Dercol = [IV1].End(xlToLeft).Column ' il faut mettre la première ligne du tableau, ici ligne 40
Colonne = Left(Columns(Dercol).Address(ReferenceStyle:=xlA1), InStr(1, Columns(Dercol).Address(ReferenceStyle:=xlA1), Chr(58), 1) - 1)
plageGraphique2 = "A2:" & Colonne & "4,A6:" & Colonne & "6"
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.SetSourceData Source:=Range(plageGraphique2)
ActiveChart.ChartType = xlArea
ActiveChart.SeriesCollection(1).Select
ActiveChart.ChartStyle = 2
'ActiveChart.SeriesCollection(1).Name = "Reste à Réceptionner"
ActiveChart.SeriesCollection(2).Select
ActiveChart.ChartStyle = 2
ActiveChart.SeriesCollection(3).ChartType = xlLine
Comment faire en sorte que k graphiques se crééent. Et que ma plage de données (plageGraphique2 ainsi que Dercol se décale) de 8 cellules à chaque boucle.
FICHIER:http://www.cjoint.com/c/EHyjEzCUiJ1
Merci d'avance!
A voir également:
- Boucle et Graphiques
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Huawei s'allume et s'éteint en boucle - Forum Huawei
- Redémarrage en boucle Xiamo mi note 10 - Forum Xiaomi
- Mon pc s'allume et s'éteint en boucle - Forum Virus
- PC qui s'allume et s'éteint en boucle - Forum PC portable
1 réponse
Bonjour,
Avoir un Graphique qui s'appelle Graphique 1 et ses données associées plageGraphique2, ça commençait mal...
Une proposition :
A+
Avoir un Graphique qui s'appelle Graphique 1 et ses données associées plageGraphique2, ça commençait mal...
Une proposition :
Sub GraphiqueAires()
Sheets("GraphiqueParFournisseur").Activate
For Each g In ActiveSheet.ChartObjects
g.Delete
Next g
Application.ScreenUpdating = False
k = 0
Dercol = [IV1].End(xlToLeft).Column
While Cells(2 + k * 8, 1).Value <> ""
Set plageC = Union(Range(Cells(2 + 8 * k, 1), Cells(4 + 8 * k, Dercol)), Range(Cells(6 + 8 * k, 1), Cells(6 + 8 * k, Dercol)))
Dim c As ChartObject
Set c = ActiveSheet.ChartObjects.Add(10, 20, 200, 200)
With c.Chart
.SetSourceData Source:=plageC 'Range("A2:AW4,A6:AW6")
.ChartType = xlArea
.SeriesCollection(1).Select
.ChartStyle = 2
.SeriesCollection(2).Select
.ChartStyle = 2
.SeriesCollection(3).ChartType = xlLine
End With
' Couleurs
With ActiveChart.SeriesCollection(1)
.Interior.Color = RGB(255, 160, 47)
End With
With ActiveChart.SeriesCollection(2)
.Interior.Color = RGB(254, 88, 21)
End With
With ActiveChart.SeriesCollection(3)
.Border.Color = RGB(80, 158, 47)
End With
k = k + 1
Wend
End Sub
A+
oui je sais, j'avais ce code pour un autre graphique unique. Je sais bien que ca ne peut pas fonctionner avec plageGraphique2 et graphique1 en nom. Je voulais juste de l'aide et un bout de code qui ressemblait un peu à ce que j'avais.
En tout cas c'est exactement ça que je recherchais. Merci beaucoup.
Bonne journée!
Est ce que c'est possible de les placer les uns en dessous des autres, avec la même taille?
Et est ce que c'est possible de nommer mes graphique en fonctions du nom du fournisseur? Par exemple pour mon premier tableau le fournisseur c'est : GFI INFORMATIQUE dans la cellule A2. Est ce que c'est possible que mon graphique de ce tableau se nomme "GFI INFORMATIQUE"?
Merci d'avance, bonne journée!
https://docs.microsoft.com/en-us/office/vba/api/Excel.ChartObjects.Add en utilisant k pour faire varier la position du graphique
Et oui.
https://docs.microsoft.com/en-us/previous-versions/office/developer/office-2003/aa173287(v=office.11)?redirectedfrom=MSDN
Bonne journée.