création de graphiques "dynamiques"

  • Initiateur de la discussion Initiateur de la discussion canichon
  • 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 !

C

canichon

Guest
Bonjour a tous,

J'ai fait un petit programme qui suit des données sur plusieurs sociétés et je voudrais mettre ces données sur des graphiques.
Mon probleme est que je sais créer des graphiques par : Charts.Add mais je ne sais pas les renommer pour pouvoir les "retrouver" et les mettre a jour par la suite.

est ce que quelqu'un pourrait me donner la syntaxe pour renommer un graphique et changer les fameux "Graphique X"

Merci d'avance
 
Re : création de graphiques "dynamiques"

Bonjour,

Une piste avec la démarche suivante

1) Créez un classeur et nommez une de ces feuilles "test"
2) Renseignez la plage C4 : D10 des données qui serviront de source aux tableaux
3) Copiez le code suivant dans un module standard
Code:
'### Constante à adapter ###
Const MA_FEUILLE As String = "test"
'###########################

Sub ConstruitGraphiques()
Dim C As Chart
  '--- Construction d'un 1er graphique ---
Set C = Charts.Add
With C
  .ChartType = xlPie
  .SetSourceData Source:=Sheets(MA_FEUILLE).Range("C4:D10"), PlotBy:=xlColumns
  .Location Where:=xlLocationAsObject, Name:=MA_FEUILLE
End With
  '°°° Ne pas utiliser la variable object C mais le ActiveChart °°°
ActiveChart.Parent.Name = "Camembert" ' adapter par le nom désiré
  '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
  
  '--- Construction d'un 2ème graphique ---
Set C = Charts.Add
With C
  .ChartType = xlColumnClustered
  .SetSourceData Source:=Sheets(MA_FEUILLE).Range("C4:D10")
  .Location Where:=xlLocationAsObject, Name:=MA_FEUILLE
End With
  '°°° Ne pas utiliser la variable object C mais le ActiveChart °°°
ActiveChart.Parent.Name = "Histogramme" ' adapter par le nom désiré
  '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
End Sub

Sub LitNomGraphique()
Dim CO As ChartObject
For Each CO In Sheets(MA_FEUILLE).ChartObjects
  CO.Activate
  MsgBox "Le nom du graphique est : ''" & CO.Name & "''"
Next CO
Call Placement
End Sub

Sub Placement(Optional dummy As Byte)
  '--- On fait référence aux graphiques par leur nom ---
Sheets(MA_FEUILLE).ChartObjects("Camembert").Top = 1
Sheets(MA_FEUILLE).ChartObjects("Histogramme").Top = 250
End Sub

4) Lancez la Sub ConstruitGraphiques pour construire 2 tableaux qui sont renommés dans le code
5) Lancez la Sub LitNomGraphique qui affichera le nom personnalisé des graphiques

Cordialement.

PMO
Patrick Morange
 
- 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

Réponses
2
Affichages
474
Réponses
11
Affichages
668
Réponses
1
Affichages
220
Retour