From Early to Late bind

H

Henk

I want to convert the following code from Early binding to Late binding.
Anyone any idea how to do that?

Public Sub ChartToPowerPoint()
Application.ScreenUpdating = False
Dim PPApp As PowerPoint.Application
Dim PPPres As PowerPoint.Presentation
Dim PPSlide As PowerPoint.Slide
Dim NewIndex As Integer
Dim ChartName As String
ChartName = ActiveSheet.Name
ActiveSheet.ChartObjects(ChartName).Activate
ActiveChart.ChartArea.Select
ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen,
Format:=xlBitmap
On Error GoTo PPAppNotopen
Set PPApp = GetObject(, "Powerpoint.Application")
On Error GoTo PPPresNotopen
Set PPPres = PPApp.ActivePresentation
PPApp.ActiveWindow.ViewType = ppViewNormal
On Error GoTo 0
NewIndex = PPPres.Slides.Count + 1
PPPres.Slides.Add(Index:=NewIndex, Layout:=ppLayoutBlank).Select
Set PPSlide =
PPPres.Slides(PPApp.ActiveWindow.Selection.SlideRange.SlideNumber)
PPApp.ActiveWindow.ViewType = ppViewSlide
PPSlide.Shapes.Paste.Select
PPApp.ActiveWindow.Selection.ShapeRange.Height = 303.5
PPApp.ActiveWindow.Selection.ShapeRange.Align msoAlignCenters, True
PPApp.ActiveWindow.Selection.ShapeRange.Align msoAlignMiddles, True
PPApp.ActiveWindow.ViewType = ppViewNormal
Set PPSlide = Nothing
Set PPPres = Nothing
Set PPApp = Nothing
a = MsgBox("Chart has been copied to your PowerPoint presentation.",
vbOKOnly, "Chart copied to PowerPoint")
Exit Sub
PPAppNotopen:
a = MsgBox("PowerPoint is not available at the moment." & Chr(10) & "Open
PowerPoint and the presentation where the chart should be copied to first and
then try again.", vbOKOnly, "PowerPoint not active")
Exit Sub
PPPresNotopen:
a = MsgBox("There is no PowerPoint presentation available at the moment." &
Chr(10) & "Open the PowerPoint presentation where the chart should be copied
to first and then try again.", vbOKOnly, "No PowerPoint presentation
available")
Exit Sub
End Sub

Hope you can help me out.

Henk
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top