Copier un graphe de Excel a Word

Bonjour le forum.

Comme si bien dit dans le titre, je cherche a copier un graphe depuis Excel dans Word en pilotage word.

Voici mon code et ça fait quelque temps que je bloque dessus en cherchant sur internet avec acharnement mais pas moyen de trouver comment faire :

Il arrive a retrouver le graphe que je veux, ça, ça marche. Mais impossible de le copier / coller à la suite de mon texte dans mon document.

'Ajouter graphe 1 : Utilisation par semaine
 For i = Feuille.ChartObjects.Count To 1 Step -1
        Feuille.ChartObjects(i).Activate
     If ActiveChart.ChartTitle.Text = Feuille.Name & " Utilisation par semaine" Then
         With Feuille.ChartObjects(i)
             .CopyPicture
         End With
            WordDoc.Paragraphs.Add
            WordDoc.Paragraphs(WordDoc.Paragraphs.Count).Range.Select
            Selection.Paste
         DoEvents
         Exit For
     End If
Next i

Bonjour,

Ecrit plutôt un truc genre :

For Each Graph In Sheets("Feuil1").ChartObjects
    If Graph.Name = "Utilisation par semaine" Then
        Graph.CopyPicture
        WordApp.Selection.EndKey Unit:=6 ' aller à la fin du doc
         WordApp.Selection.Paste
    End If
Next Graph

Pierre


Avec la déclaration :

Dim Graph As ChartObject

Ton "Graph" est de type Chart ?


Parce que s'il est de type "chart" j'avais déjà essayé et ça fait l'erreur '13' Incompatibilité de type.


Ah pardon. ja'vais pas vu la déclaration.


Je viens de tester ton code et pas de graph en vue. Le code s'execute normalement mais le graph n'est pas présent dans le document.

J'ai fait un test avec un point d'arrêt et apparement il ne passe même pas dans le "if". Ce n'est pas le nom du graph mais son Titre que je recherche. ça marche aussi avec ChartsObject ?


Désolée pour le multi multi multipost.

Du coup j'ai juste repris

        WordApp.Selection.EndKey Unit:=6 ' aller à la fin du doc
        WordApp.Selection.Paste

Dans ton code que j'ai ajouté dans le mien :

For i = Feuille.ChartObjects.Count To 1 Step -1
       Feuille.ChartObjects(i).Activate
     If ActiveChart.ChartTitle.Text = Feuille.Name & " Utilisation par semaine" Then
         With Feuille.ChartObjects(i)
             .CopyPicture
         End With
          '  WordDoc.Paragraphs.Add
          '  WordDoc.Paragraphs(WordDoc.Paragraphs.Count).Range.Select
          '  Selection.Paste
        WordApp.Selection.EndKey Unit:=6 ' aller à la fin du doc
        WordApp.Selection.Paste
        ' DoEvents
         Exit For
    End If
Next i

C'est un peu du bricolage mais ça marche correctement merci pour le coup de pouce

Ben oui, voir démo

Pierre

10demo-graph.xlsm (29.81 Ko)
Rechercher des sujets similaires à "copier graphe word"