Plantages Automation sur graphiques

  • Initiateur de la discussion Initiateur de la discussion Thierry
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

Thierry

Guest
J'avoue que je sèche......
Le problème : je génère des graphiques à partir d'un tableau lui-même constitué par macro VBA.

Tout se passe bien sauf quand je suis en train de générer les graphique; suivant le nombre (jusqu'à + de 30) on arrive à des comportements bizarres (Ex : erreur sur une ligne VBA, erreur automation, presse-papier qui ne colle plus les champs,.....) un peu comme s'il n'y avait plus de mémoire.....

Si je supprime la partie de code qui génère les graphiques tout se passe bien.

Le process Excel arrive à 24Mo (le fichier lui reste assez light : 174Ko ).

Quelqu'un a-t-il un exemple de création d'un ensemble conséquent de graphique dans la même feuille ?

Merci beaucoup..............

Ci-joint le code :

Set Graphique = sheetTdb.ChartObjects.Add(x, y, 400, 200)
Graphique.Activate
Graphique.Placement = xlFreeFloating
Graphique.Locked = True
With ActiveChart
.ChartType = xlLineMarkers
.SetSourceData Source:=sheetTdb.RangeRangeSources), PlotBy:=xlRows
.Location WHERE:=xlLocationAsObject, Name:=sheetTdb.Name
For l = 0 To NbAns
.SeriesCollection(l + 1).XValues = sheetTdb.Range('G6:R6')
.SeriesCollection(l + 1).Name = sheetTdb.Range('F' & j)
Next l
.HasTitle = True
.ChartTitle.Characters.Text = sheetTdb.Range(RangeNomSite)
End With
 
Salut,

Plusieurs pistes pour essayer de trouver une solution:

La variable Graphique comment tu la déclares ?=> Il vaudrait mieux utiliser chartobject si ce sont des classeurs incorporés.
Tu utilises Graphique puis activechart, autant travailler que sur graphique. Enfin travailler avec les constantes en numérique et non par leur nom..

et Graphique = sheetTdb.ChartObjects.Add(x, y, 400, 200)
withg Graphique
.Placement = 3
.Locked = True
with .chart
.ChartType = 65
.SetSourceData sheetTdb.RangeRangeSources), 1

For l = 0 To NbAns
.SeriesCollection(l + 1).XValues = sheetTdb.Range('G6:R6')
.SeriesCollection(l + 1).Name = sheetTdb.Range('F' & j)
Next l
.HasTitle = True
.ChartTitle.Characters.Text = sheetTdb.Range(RangeNomSite)
End With


Est-ce que tu utilises Option explicit afin de voir si toutes tes variables sont bien déclarées ?


A+++
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

C
Réponses
5
Affichages
2 K
Charles78
C
M
Réponses
9
Affichages
2 K
M
J
Réponses
9
Affichages
65 K
G
Réponses
3
Affichages
6 K
S
Réponses
0
Affichages
1 K
sesedu39
S
K
Réponses
1
Affichages
3 K
M
Réponses
6
Affichages
1 K
M
Réponses
2
Affichages
981
S
  • Question Question
Réponses
3
Affichages
3 K
shakapouet
S
N
Réponses
4
Affichages
1 K
Nashpuss
N
Retour