Dimensionnement d'un graphique et impact sur les autres oVBA
Bonjour
avec le code suivant qui consiste à insérer un graphique sur ma feuille de calcul :
Range("A3:A32,C3:C32").Select
Range("C3").Activate
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("GRAPH").Range("A3:A32,C3:C32"), _
PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="GRAPH"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "VOLUME DES VENTES"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "JOURS"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "VOLUMES "
End With
ActiveSheet.Shapes(1).ScaleWidth 0.83, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes(1).ScaleHeight 0.85, msoFalse, _
msoScaleFromBottomRight
ActiveWindow.Visible = False
Windows("VENTES.xls").Activate
'positionnnement du graph:
With Sheets("GRAPH").ChartObjects(1)
.Left = Range("l45").Left
.Top = Range("l45").Top
End Withqui marche bien pour créer le graphique souhaité , j'ai un soucis non resolu , en fait lorsque je génére le graph sur ma feuille de calcul via ce code ,les bouton de formulaires qui existent sur celle ci (et aussi celui qui me sert à generer ce graph) sont eux aussi redimensionnés autant de fois que je veux generer le graph , du coup mes boutons de fotmulaires deviennent tout petit, en ayant modifié les lignes :
ActiveSheet.Shapes(1).ScaleWidth 0.83, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes(1).ScaleHeight 0.85, msoFalse, _en
ActiveSheet.ChartObjects(1).ScaleWidth 0.83, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.ChartObjects(1).ScaleHeight 0.85, msoFalse, _j'obtiens une erreur du type "proprieté ou methode non gerée"
Auriez vous une idée de la facon de faire pour que la génération du graph ou d'autres graph sur cette même feuille n'impacte pas les boutons de formulaires dans leur dimension ?
Merci à vous
..j'ai tout simplement retiré les lignes
ActiveSheet.Shapes(1).ScaleWidth 0.83, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes(1).ScaleHeight 0.85, msoFalse, _
msoScaleFromBottomRightet ca marche bien , merci quand meme