This is really quite simple, especially since you say you want to change a slide that's not currently in view (which can get tricky due to bugs in some PPT versions).
Add this to a VBA module in your presentation. You'll have to save the presentation as PPTM or PPSM rather than PPTX/PPTX. Follow the instrux included as comments:
Option Explicit
' We'll modify slide #4 ... change as needed ' Make sure that the slide has no empty content or picture placeholders on it Const lSlideNum As Long = 4
Sub AddAnImage() ' add a shape to any slide you like ' assign the shape an Action Setting of Run Macro: AddAnImage
Dim oSl As Slide Dim oSh As Shape Set oSl = ActivePresentation.Slides(lSlideNum) ' bring in the image; setting width/height to -1 ensures that you ' don't distort it Set oSh = oSl.Shapes.AddPicture("c:\temp\photo.jpg", msoFalse, msoTrue, 0, 0, -1, -1) With oSh .LockAspectRatio = msoTrue ' to make sure it stays undistorted ' change its position/size as you wish ' for example, let's make it the full width of the slide: .Width = ActivePresentation.PageSetup.SlideWidth End With
End Sub
Sorry for the bad editing...