![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour à tous,
j'ai une macro qui me fait des graphiques en boucle, en les insérant en tant qu'objet sur ma feuille de calcul. Le problème, c'est qu'ils sont superposés. Je souhaiterais que ma macro les positionne les uns en dessous des autres. Comment faire ? Merci d'avance :-) |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
bonjour gueridon, bonjour forum,
si tu as un nombre constant de graphes, tu peux utiliser ActiveSheet.Shapes(1).IncrementLeft () et ).IncrementTop () j'envoie une prtie de code que j'utilise. j'ai aussi un code pour un nombre variable de graphes, mais il faut que je fasse des recherches. Si tu en as besoin, rappelle '--------placement des graphes--------- u = ActiveSheet.ChartObjects.Count For n = 1 To u '--gauche---------- ActiveSheet.Shapes(1).IncrementLeft (-100) 'placement à gauche ActiveSheet.Shapes(1).IncrementTop (-80) ActiveSheet.Shapes(2).IncrementLeft (-100) 'placement à gauche ActiveSheet.Shapes(2).IncrementTop (5) '-----droite---------------------- ActiveSheet.Shapes(3).IncrementLeft (15) 'placement à droite 1 ActiveSheet.Shapes(3).IncrementTop (-80) ActiveSheet.Shapes(4).IncrementLeft (15) 'placement à droite 2 ActiveSheet.Shapes(4).IncrementTop (5) Next |
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
voilà, j'ai retrouvé le code pour le décalage des graphes en boucle :
Set graphe = Worksheets("Feuil1").ChartObjects.Add(300 + Decalage, 1 + Decalage, 400, 220) 'décale à gauche 'décale vers le bas With graphe.Chart .SetSourceData Worksheets(i).Range("J14", Range("J14").End(xlDown)) .ChartType = xlXYScatterSmoothNoMarkers .ChartArea.Interior.ColorIndex = 34 .PlotArea.Interior.ColorIndex = 8 .PlotArea.Width = 500 .PlotArea.Height = 500 .SeriesCollection.Add Plage, xlColumns, True, True End With Decalage = Decalage + 30 'modifie l'écart entre graphes Next i il te suffit de faire varier les paramètres albert |
| Liens sociaux |
| Outils de la discussion | |
|
|