Late Binding
They are PowerPoint constants, and you cannot use constants from the OM in
late binding.
Replace by 2 and 3 respectively.
--
HTH
Bob Phillips
(remove nothere from email address if mailing direct)
"Mark" wrote in message
...
At the present time I am using Excel 97, With the help of participants on
this newsgroup and using Excel XP, I managed to put together some code
which
copied an excel spreadsheet into powerpoint.
The following code worked fine on Excel XP but I needed it to work on all
versions of Excel so I have now used Late Binding instead of referencing
it.
Unfortunately now I have done this I am getting debug errors on:
ppLayoutText
ppPasteMetafilePicture
Can anyone help with a solution, please?
Here is some of the code
*****************
Dim pptApp As Object
Dim pptPres As Object
Dim pptSlide As Object
Dim pptShape As Object
Set pptApp = CreateObject("PowerPoint.Application")
Set pptPres = pptApp.Presentations.Add(msoTrue) ' create a new
presentation
' or open an existing presentation
' Set pptPres =
pptApp.Presentations.Open("C:\Foldername\Filename. ppt")
' apply a slide template
pptPres.ApplyTemplate "C:\Program Files\Microsoft
Office\Templates\Presentation Designs\Contemporary Portrait.pot"
For Each asheet In ActiveWorkbook.Sheets
' only officer sheets visible at this point
If asheet.Visible = True Then
sheetname = asheet.Name
Worksheets(sheetname).Activate
With ActiveSheet
.Shapes("Slide").Copy ' copy a picture from Excel
With pptPres.Slides
Set pptSlide = .Add(.Count + 1, ppLayoutText) ' add a
slide
End With
With pptSlide
.Shapes(1).Delete ' remove title
'.Shapes(2).Delete ' remove the text box
.Shapes.PasteSpecial ppPasteMetafilePicture
With .Shapes(.Shapes.Count)
.Left = 0
.Top = 0
.Width = 720
.Height = 540
End With
End With
End With
End If
Next asheet
etc.....
|