localisation de graphe. probleme avec chartobjects

Moncsept

XLDnaute Nouveau
Bonjour a tous,

J’ai une question toute simple qui me bloque.
J’ai cree trios graphes avec VBA. Pour leur emplacement, ca me fait du n’importe quoi, meme avec les codes ci-dessous:
Set graph1 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:="feuille"
With Worksheets("feuille ").ChartObjects(1)
.Width = 800
.Height = 200
.Left = 2600
.Top = 100
End With

Set graph2 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:=" feuille "
With Worksheets("feuille ").ChartObjects(1)
.Width = 800
.Height = 200
.Left = 2600
.Top = 300
End With

Set graph3 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:=" feuille "
With Worksheets("feuille ").ChartObjects(1)
.Width = 600
.Height = 200
.Left = 2600
.Top = 500
End With

N’etant pas expert, je suis sur que le fait de mettre charobjects(1) fait que mes graphes sont tres mal localises. L’idee pour moi etait de les metre l’un au dessus de l’autre, et qu’ils aient la meme taille.
Merci pour votre aide.
 

xhudi69

XLDnaute Accro
Re : localisation de graphe. probleme avec chartobjects

Bonsoir Moncsept, le Forum

Comme cela ce serait mieux (à mettre dans un bouton pour tester)

Code:
Sub Bouton1_Clic()
With Sheets("Feuil1").ChartObjects.Add(50, 400, 50, 200)
    MsgBox .Name
    'With Sheets("Feuil1").ChartObjects.Add(Left,Top,Width,Height).....
End With
End Sub

@+ :cool:
 

Moncsept

XLDnaute Nouveau
Re : localisation de graphe. probleme avec chartobjects

merci pour ta reponse.

malheuresement ca ne marche pas.

le probleme est super simple. J'ai 3 boutons et chacun me trace un graphe.

Mon probleme cest juste la localisation des graphes.

dans les codes que jai mis, jecris pour les 3 graphes:
ActiveChart.Location
............
With Worksheets("feuille ").ChartObjects(1)


or le probleme vient de ca, cest sur. car une fois que le premier graphe est trace, si je passe au second (En cliquant sur le 2nd bouton) il prendra la place du premier et ne semettra pas au-dessous comme jai indique.


il faudrait au lieu de activechart.location qqc du genre graph2.location ou graph3.location

et a la place de chartobjects(1) ajouter des chartobjects(2) et chartobjects(3)

merci si qqun peut maider.


A+
 

Moncsept

XLDnaute Nouveau
Re : localisation de graphe. probleme avec chartobjects

bonjour,

c'est ce que j'ai mis dans mon premier msg plus haut.
j'ai enleve l'indice dans chartobjects et ca fonctionne plus ou moins meme si je sais que c'est pas clean comme code; du coup, j'ai 3 boutons, chacun dessine un graphes, et ci-dessous les codes des graphes, ou plutot de localisation de chaque graphe:

Set graph1 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:="feuille"
With Worksheets("feuille ").ChartObjects()
.Width = 800
.Height = 200
.Left = 2600
.Top = 100
End With

Set graph2 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:=" feuille "
With Worksheets("feuille ").ChartObjects()
.Width = 800
.Height = 200
.Left = 2600
.Top = 300
End With

Set graph3 = Charts.Add
ActiveChart.Location _
Where:=xlLocationAsObject, Name:=" feuille "
With Worksheets("feuille ").ChartObjects()
.Width = 600
.Height = 200
.Left = 2600
.Top = 500
End With


A+
 

xhudi69

XLDnaute Accro
Re : localisation de graphe. probleme avec chartobjects

Bonjour Moncsept, le Forum

Si les Graph sont déjà créés et donc tu connais les noms, appliques le code suivant (dans un bouton) et à adapter:
Code:
With Sheets("Feuil1").ChartObjects("Graphique 1")
    .Width = 800
    .Height = 200
    .Left = 500
    .Top = 100
End With

Si tu créé le graph, alors applique ce code (dans un bouton) et à adapter:
Code:
With Sheets("Feuil1").ChartObjects.Add(50, 400, 50, 200)
    MsgBox .Name
End With

@+ :cool:
 

Discussions similaires

Réponses
1
Affichages
224
Réponses
0
Affichages
197

Statistiques des forums

Discussions
312 839
Messages
2 092 687
Membres
105 509
dernier inscrit
hamidvba