Hoi allemaal,
Ik heb een keurig werkende macro die de chart automatisch copy-paste in een bepaalde PowerPoint-slide. Is het echter mogelijk om de vorige chart in die bepaalde slide te verwijderen en vervolgens te vervangen met de nieuwe? In plaats van dat er twee grafieken op een slide komt te staan waarvan ik de oude handmatig moet verwijderen, wil ik dit graag automatisch laten gebeuren.
Dit is mijn script tot nu toe:
Mvg,
Djani
Ik heb een keurig werkende macro die de chart automatisch copy-paste in een bepaalde PowerPoint-slide. Is het echter mogelijk om de vorige chart in die bepaalde slide te verwijderen en vervolgens te vervangen met de nieuwe? In plaats van dat er twee grafieken op een slide komt te staan waarvan ik de oude handmatig moet verwijderen, wil ik dit graag automatisch laten gebeuren.
Dit is mijn script tot nu toe:
Code:
Sub ChartToPresentation()
Dim PPApp As PowerPoint.Application
Dim PPPres As PowerPoint.Presentation
Dim PPSlide As PowerPoint.Slide
Dim shp As String
Dim newShape As PowerPoint.ShapeRange
' Make sure a chart is selected
If ActiveChart Is Nothing Then
MsgBox "Please select a chart and try again.", vbExclamation, _
"No Chart Selected"
Else
' Reference existing instance of PowerPoint
Set PPApp = GetObject(, "Powerpoint.Application")
' Reference active presentation
Set PPPres = PPApp.ActivePresentation
' Reference active slide
Set PPSlide = PPPres.Slides(4)
' Copy chart as a picture
ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen, _
Format:=xlPicture
' Paste chart
Set newShape = PPSlide.Shapes.Paste
With newShape
.IncrementLeft 400
.IncrementTop 250
.ScaleWidth 0.87, msoFalse, msoScaleFromTopLeft
.ScaleHeight 0.87, msoFalse, msoScaleFromTopLeft
End With
' Clean up
Set PPSlide = Nothing
Set PPPres = Nothing
Set PPApp = Nothing
End If
End Sub
Mvg,
Djani