From Early binding to Late binding

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