Bonjour,
voici un exemple,
Sub Presentation_Graph()
'activer la référence à la bibliothèque Microsoft PowerPoint x.x Object Library
Dim PptApp As PowerPoint.Application
Dim PptDoc As PowerPoint.Presentation
Dim Sh As PowerPoint.Shape
Dim objImageBox As PowerPoint.Shape
Dim MyChart As Chart
Dim w As Double, h As Double
Set PptApp = CreateObject("Powerpoint.Application")
Set PptDoc = PptApp.Presentations.Add
With PptDoc
'Ajoute un Slide
.Slides.Add Index:=1, Layout:=ppLayoutBlank
' '24,4cm en largeur et 14,28 en hauteur
.PageSetup.SlideWidth = Application.CentimetersToPoints(24.5)
.PageSetup.SlideHeight = Application.CentimetersToPoints(14.28)
w = .PageSetup.SlideWidth ' largeur du Slide
h = .PageSetup.SlideHeight ' hauteur du Slide
'Crée une zone de texte
Set Sh = .Slides(1).Shapes.AddLabel(Orientation:=msoTextOrientationHorizontal, _
Left:=l, Top:=100, Width:=150, Height:=60)
Sh.TextFrame.TextRange.Text = "Présentation du graphique"
Sh.TextFrame.TextRange.Font.Size = 20
Sh.TextFrame.TextRange.Font.Name = "Helvetica 75 Bold"
Sh.TextFrame2.TextRange.ParagraphFormat.Alignment = msoAlignCenter 'aligne le texte au centre du TB
Sh.Left = (w / 2) - (Sh.Width / 2) 'aligne la zone de texte au centre de la diapo
'insert le graph
chemin = ThisWorkbook.Path & "\graph1.jpg"
ActiveSheet.ChartObjects(1).Chart.Export Filename:=chemin, filtername:="JPG" ' enregistre le graphique en .jpg
Set objImageBox = .Slides(1).Shapes.AddPicture(chemin, msoCTrue, msoCTrue, 10, 10, 200, 200)
objImageBox.Left = (w / 2) - (objImageBox.Width / 2) 'aligne la graph au centre de la diapo
objImageBox.Top = Sh.Top + Sh.Height + 10 'aligne le graph sous le textbox
Kill (chemin) 'supprime le fichier image
End With
End Sub
edit: vous pouvez modifier ActiveSheet par Sheets("MaFeuil")