Bonjour,
Je suis face à un problème. J'aimerai réussir à selectionner un shape particulier. J'ai sur un feuilles plusieurs bouton qui me permettent de creer un graphique. J'aimerai positionner le graphique à un certain endroit d'où ce code qui vient de l'enregistreur:
Je bloque à cette partie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub Macro1() ThisWorkbook.ActiveSheet.Shapes.AddChart.Select With ActiveChart .ChartType = xlColumnStacked .SetSourceData Source:=ThisWorkbook.ActiveSheet.Range("A1:I6") For i = 1 To .SeriesCollection.Count .SeriesCollection(i).ApplyDataLabels Next i .SetElement (msoElementDataLabelCenter) End With ActiveSheet.Shapes(1).IncrementLeft -345 ActiveSheet.Shapes(1).IncrementTop 112.5 ActiveSheet.Shapes(1).ScaleWidth 1.5333333333, msoFalse, msoScaleFromTopLeft End Sub
En effet si je met le nom du shape créer et que je supprime le graphique et que j'en crée 1 nouveau, le nom n'est plus le même et j'ai une erreur. Je voulais donc selectionner le shapes actif qui est mon graphique et activeshapes n'existe pas... J'ai donc voulu passer par shapes(1) mais mon shapes(1) est mon bouton.... et oui quel dommage...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ActiveSheet.Shapes(1).IncrementLeft -345 ActiveSheet.Shapes(1).IncrementTop 112.5 ActiveSheet.Shapes(1).ScaleWidth 1.5333333333, msoFalse, msoScaleFromTopLeft
Finalement peut etre que le problème peut être gérer en disant directement où placer le graphique et quelle taille doit il faire or je ne trouve pas cette propriété... j'ai cherch" du coté des propriété de addchart mais ca ne fonctionnait pas quand j'ai fait ceci:
ThisWorkbook.ActiveSheet.Shapes.AddChart(,-345,112.5,,).Select
Merci d'avance de votre aide
Partager