View Single Post
 
Old 05-05-2012, 11:18 PM
JohnWilson JohnWilson is offline Windows 7 64bit Office 2010 32bit
Programmer
 
Join Date: Nov 2008
Location: UK
Posts: 1,912
JohnWilson has a spectacular aura aboutJohnWilson has a spectacular aura about
Default

Don't see why that doesn't work but I think I would do it like this:

Code:
Sub TestCode()
Dim objPPTApp As Object
Dim objPPPres As Object
Dim objPPSld As Object
'Open Existing PowerPoint
Set objPPTApp = CreateObject("PowerPoint.Application")
With objPPTApp
    .Visible = True
    Set objPPPres = .Presentations.Open("C:\Users\John\Documents\Test\Test.pptx")
End With
Set objPPSld = objPPPres.Slides(1)
Call addpic(objPPPres, objPPSld, "C:\Users\John\Documents\test\Pic1.jpg")
Call addpic(objPPPres, objPPSld, "C:\Users\John\Documents\test\Pic2.jpg")
End Sub

Sub addpic(opres As Presentation, osld As Slide, strPath As String)
Dim opic As Shape
Set opic = osld.Shapes.AddPicture(strPath, False, True, 1, 1, -1, -1)
With opic
.LockAspectRatio = True
.Width = 500
With opres.PageSetup
        opic.Left = (.SlideWidth \ 2) - (opic.Width \ 2)
        opic.Top = (.SlideHeight \ 2) - (opic.Height \ 2)
End With
End With
End Sub
__________________
Microsoft PowerPoint MVP 2007-2023
Free Advanced PowerPoint Tips and Tutorials
Reply With Quote