Recuperer ts les noms de ts les objets graphiques

Creepy

XLDnaute Accro
Bonjour à tous,

Je cherche à recuperer en VBA tous les noms des objets graphiques se trouvant dans un classeur, à savoir

- Les feuilles graphiques
- les graphiques inserés dans les feuilles de calcul.

Franchement je me tape la tête contre les murs, je n'y arrive pas !

Quelqu'un aurait il une idée ?

Merci d'avance

@+

Creepy
 

Creepy

XLDnaute Accro
RE bonjour à vous,

Bon j'ai à moitié solutionné mon problème.

J'ai trouvé le code pour afficher dans ma listeview tous les objets graphiques de toutes mes feuilles de calcul :

Code:
For Each Worksheet In Worksheets
    For Each objet In Worksheet.DrawingObjects
        If TypeName(objet) = 'ChartObject' Then
            ListGraph.ListItems.Add ItemNumber, , objet.Name
            ItemNumber = ItemNumber + 1
        End If
    Next
Next

Il me reste plus qu'à faire la même chose mais sur une feuille graphique.

Si quelqu'un a une idée !

++

Creepy
 

Creepy

XLDnaute Accro
Re re all :)

Bon ba j'ai ma réponse complète je vous fais profité de l'information sait on jamais ca pourrait vous servir un jour.

Donc ce bout de code permet de mettre dans une ListView tous les nom des objets graphiques que ce soir des graphiques inserés sur une feuille de calcul ou une feuille graphique.

Dim ItemNumber As Integer, NombreFeuilleCharts As Integer

ItemNumber = 1
 
For
Each Worksheet In ActiveWorkbook.Worksheets
    For
Each objet In Worksheet.DrawingObjects
       
If TypeName(objet) = 'ChartObject' Then
            ListGraph.ListItems.Add ItemNumber, , objet.Name
            ItemNumber = ItemNumber + 1
       
End If
   
Next
Next

If Charts.Count <> 0 Then
&nbsp; &nbsp;
For NombreFeuilleCharts = 1 To Charts.Count
&nbsp; &nbsp; &nbsp; &nbsp; ListGraph.ListItems.Add ItemNumber, , Charts(NombreFeuilleCharts).Name
&nbsp; &nbsp; &nbsp; &nbsp; ItemNumber = ItemNumber + 1
&nbsp; &nbsp;
Next
End If

End Sub

Voila

@ +

Creepy
 

2passage

XLDnaute Impliqué
Re:Recuperer ts les noms de ts les objets graphiqu

Bonjour,

Alors ma solution est pas si mal, je pense :

Code:
For Each feuillegraphe In ActiveWorkbook.Charts
    Debug.Print 'Feuille graphique ' & feuillegraphe.Index & ' : ' & feuillegraphe.Name
Next
For Each gragraphe In ChartObjects
    Debug.Print 'Graphique ' & gragraphe.Index & ' : ' & gragraphe.Name
Next

Mais t'es gentil : cherche moins vite, là je peux pas suivre :p :p
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 368
Messages
2 087 665
Membres
103 633
dernier inscrit
Surfer