Automate PowerPoint by VBA
Creating powerpoint presentation of dashboard is a time taking process and it VBA can easily Automate PowerPoint.
As powerpoint also support VBA so the powerpoint object model can be loaded in excel vba. here we are sharing a very basic example of how we can use ppt object model in to excel vba to send charts on a slide.
here is the code we are using
Sub SendChartToPowerPoint() '--Application-Presentations-Slides-Shapes Dim objPP As Object Dim objPresentation As Object Dim objSlides As Object Dim objChart As ChartObject Dim objShape As Object Dim strPath As String '--Load powerpoint by creating its object Set objPP = CreateObject("PowerPoint.Application") objPP.Visible = True '--Add a presentation Set objPresentation = objPP.presentations.Add '--add a blank slide to the presentation Set objSlides = objPresentation.slides.Add(1, 12) '--Loop all charts in the file For Each objChart In Sheet1.ChartObjects If objSlides Is Nothing Then Set objSlides = objPresentation.slides.Add(objPresentation.slides.Count + 1, 12) End If '--Copy chart as picture objChart.CopyPicture xlScreen, xlPicture '--Paste in powerpoint slide objSlides.Shapes.Paste '-- Set height/width of the pasted shape Set objShape = objSlides.Shapes(objSlides.Shapes.Count) objShape.Height = 482 objShape.Width = 855 objShape.Top = 20 objShape.Left = 61 Set objSlides = Nothing Next objChart End Sub
Join my VBA whatsApp group to know more