Automatisation VBA excel vers PPT
Ferméhamariana Messages postés 5 Date d'inscription vendredi 10 mars 2023 Statut Membre Dernière intervention 10 mars 2023 - 10 mars 2023 à 10:07
- Automatisation VBA excel vers PPT
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Excel compter cellule couleur sans vba - Guide
1 réponse
10 mars 2023 à 10:07
Bonjour,
Je fonctionnerais de cette manière :
Sub ExcelToPowerPoint()
Dim pptApp As PowerPoint.Application
Dim pptPres As PowerPoint.Presentation
Dim pptSlide As PowerPoint.Slide
Dim excelWB As Workbook
Dim excelWS As Worksheet
Dim shp As PowerPoint.Shape
'Ouvrir la présentation PowerPoint
Set pptApp = New PowerPoint.Application
Set pptPres = pptApp.Presentations.Open("C:\Chemin\Exemple_PRESENTATION.PPTX")
'Parcourir chaque onglet Excel
For Each excelWB In Application.Workbooks
For Each excelWS In excelWB.Worksheets
'Créer une nouvelle diapositive dans PowerPoint
Set pptSlide = pptPres.Slides.Add(pptPres.Slides.Count + 1, ppLayoutBlank)
'Coller le contenu de l'onglet Excel sur la diapositive PowerPoint
excelWS.UsedRange.Copy
pptSlide.Shapes.PasteSpecial DataType:=ppPasteDefault
'Ajuster la taille du contenu collé à la diapositive
Set shp = pptSlide.Shapes(pptSlide.Shapes.Count)
shp.Width = pptPres.PageSetup.SlideWidth
shp.Height = pptPres.PageSetup.SlideHeight
Next excelWS
Next excelWB
'Enregistrer la présentation sous un nouveau nom
pptPres.SaveAs "C:\Chemin\Exemple_PRESENTATION_NOMDUPDV.PPTX"
'Fermer la présentation et l'application PowerPoint
pptPres.Close
pptApp.Quit
Set pptSlide = Nothing
Set pptPres = Nothing
Set pptApp = Nothing
End Sub
Ce code ouvre la présentation PowerPoint "Exemple_PRESENTATION.PPTX" et parcourt chaque onglet Excel pour coller son contenu sur une nouvelle diapositive dans PowerPoint. Ensuite, il ajuste la taille du contenu collé pour qu'il convienne à la diapositive.
Enfin, il enregistre la présentation sous un nouveau nom "Exemple_PRESENTATION_NOMDUPDV.PPTX" et ferme la présentation et l'application PowerPoint.
N'oubliez pas de modifier le chemin d'accès du fichier PowerPoint dans la ligne Set pptPres = pptApp.Presentations.Open("C:\Chemin\Exemple_PRESENTATION.PPTX")
et de spécifier le chemin d'accès où vous souhaitez enregistrer la nouvelle présentation dans la ligne pptPres.SaveAs "C:\Chemin\Exemple_PRESENTATION_NOMDUPDV.PPTX"
.
J'espère que cela vous sera utile !