Bonjour le forum,
Voici mon problème : J'aimerais copier plusieurs graphes d'un fichier excel dans un fichier power point puis recadrer et déplacer les graphes dans la diapositive du ppt. J'ai essayé de m'inspirer de macro trouvé sur les forums, malheureusement j'ai plusieurs problèmes :
- Après avoir collé le premier graphe à copier, la macro s'arrête
- Je n'arrive donc pas à recadrer et déplacer le graphe copié
- Je ne sais pas comment je peux copier un graphe puis faire en sorte que la macro revienne sur le fichier excel, sélectionne un autre onglet puis le graphe et retourne sur le ppt (resté ouvert)
Voilà ce que j'ai fait jusqu'à présent : (macro présente sur mon fichier excel)

Sub Slide2_1()
'Slide 2 : Graphe Swing Analysis
Sheets("1. Swing Analysis EBITDA").Select
ActiveSheet.ChartObjects("Graphique 6").Activate
ActiveChart.ChartArea.Copy
Dim ppt As PowerPoint.Application
Dim pres As PowerPoint.Presentation
Dim nb As Byte
Set ppt = CreateObject("PowerPoint.Application")
ppt.Visible = True
Set pres = ppt.presentations.Open("C:\DONNEES\COMMUN\09 - September_2012_Ops Report_France.pptx")
pres.slides(2).Shapes.PasteSpecial ppPasteDefault, Link:=True
nb = pres.slides(2).Shapes.Count
With pres.slides(2).Shapes(nb)
.Left = 0
.Height = 100
End With
End Sub
Merci d'avance à tous
Voici mon problème : J'aimerais copier plusieurs graphes d'un fichier excel dans un fichier power point puis recadrer et déplacer les graphes dans la diapositive du ppt. J'ai essayé de m'inspirer de macro trouvé sur les forums, malheureusement j'ai plusieurs problèmes :
- Après avoir collé le premier graphe à copier, la macro s'arrête
- Je n'arrive donc pas à recadrer et déplacer le graphe copié
- Je ne sais pas comment je peux copier un graphe puis faire en sorte que la macro revienne sur le fichier excel, sélectionne un autre onglet puis le graphe et retourne sur le ppt (resté ouvert)
Voilà ce que j'ai fait jusqu'à présent : (macro présente sur mon fichier excel)

Sub Slide2_1()
'Slide 2 : Graphe Swing Analysis
Sheets("1. Swing Analysis EBITDA").Select
ActiveSheet.ChartObjects("Graphique 6").Activate
ActiveChart.ChartArea.Copy
Dim ppt As PowerPoint.Application
Dim pres As PowerPoint.Presentation
Dim nb As Byte
Set ppt = CreateObject("PowerPoint.Application")
ppt.Visible = True
Set pres = ppt.presentations.Open("C:\DONNEES\COMMUN\09 - September_2012_Ops Report_France.pptx")
pres.slides(2).Shapes.PasteSpecial ppPasteDefault, Link:=True
nb = pres.slides(2).Shapes.Count
With pres.slides(2).Shapes(nb)
.Left = 0
.Height = 100
End With
End Sub
Merci d'avance à tous
Pièces jointes
Dernière édition: