OVH Cloud OVH Cloud

Création massive de graphique.

1 réponse
Avatar
AfterBoy
Bonjour,

je veux cr=E9er massivement des graphiques dans des feuilles
diff=E9rentes selon mes donn=E9es fictives que voici :

A B C D E F G
1 98 99 00 01 02
2 Pomme 12 15 14
3 Orange 9 7 8 11 14
4 Banane 4 7
-----------------------------------------------------------------
N=2EB. La ligne 1 repr=E9sente l'ann=E9e

Le probl=E8me que j'ai est que les plages de donn=E9es sont diff=E9rentes
pour chaque fruit.

For i =3D 2 To 4
Sheets("donn=E9es").Select

's=E9lectionner ma plage de donn=E9e (cela fonctionne)
Range("B" & i).Select
Selection.End(xlToRight).Select
Range(Selection, Selection.End(xlToRight)).Select

'(bon ma s=E9lection de donn=E9e est faite mais je dois la transporter
dans mon graphique)

Charts.Add
ActiveChart.ChartType =3D xlColumnClustered

(je tente la ligne suivante et ca marche pas, je ne peux pas
utiliser ma selection, ca plante sur le
.selection, il y a un probleme de syntaxe ici j'ai essay=E9 aussi
.range(selection))

ActiveChart.SetSourceData Source:=3DSheets("donn=E9es").Selection,
PlotBy _
:=3DxlRows
(J'aurais aim=E9 transf=E9rer ma s=E9lection en texte ex "D2:F2" mais
comment ? )

(Je vais avoir le meme probleme pour sp=E9cifier ma plage des
abcisses(ann=E9es). qui sera toujours de la meme largeur de s=E9lection
mais sera =E0 la ligne 1 seulement Exemple
plage de donn=E9es est D2:F2 ma plage d'abcisse est D1:F1...pour pomme
plage de donn=E9es est C3:G3 ma plage d'abcisse est C1:G1...pour
orange


ActiveChart.SeriesCollection(1).XValues =3D "=3Ddonn=E9es!R1C4:R1C39"
ActiveChart.SeriesCollection(1).Name =3D "=3Ddonn=E9es!R2C3"
ActiveChart.Location Where:=3DxlLocationAsNewSheet,
Name:=3DRange("donn=E9es!c" & i).Value
With ActiveChart
.HasTitle =3D True
.ChartTitle.Characters.Text =3D Range("donn=E9es!c" & i).Value
.Axes(xlCategory, xlPrimary).HasTitle =3D True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text =3D
"Ann=E9es"
.Axes(xlValue, xlPrimary).HasTitle =3D True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text =3D "Fruits"
End With
Next

Merci

1 réponse

Avatar
Francois L
Bonjour,

je veux créer massivement des graphiques dans des feuilles
différentes selon mes données fictives que voici :

A B C D E F G
1 98 99 00 01 02
2 Pomme 12 15 14
3 Orange 9 7 8 11 14
4 Banane 4 7
-----------------------------------------------------------------
N.B. La ligne 1 représente l'année

Le problème que j'ai est que les plages de données sont différentes
pour chaque fruit.



Bonsoir,

A adapter, sur la bse de données organisée comme ci dessus en A1:G5

Sub zaza()

For i = 2 To 5
Range("A1:G1" & "," & "A" & i & ":" & "G" & i).Name = "Cible"
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Feuil4").Range("Cible")
ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil4"
Next
End Sub


--
François L