shape.linkformat.sourcefullname no path info on mac powerpoint?

G

Gary

I've got many ( about 15 Gigs ) of PC powerpoint files I want to move to the macintosh ( OS X panther, Office X) Many of the presentations have links to .avi movies.

I know that on the pc the path to the movie is almost always explicit and is stored in
shape.linkformat.sourcefullname
e.g. "c:\documents and settings\some user\my documents\movies\mymovie.avi"

I can edit that via vb or vba and set it to anything I want, no problem, for example set it to a relative link

"..\movies\mymovie.avi"

On the Mac however it doesn't look like sourcefullname field is used.
If I link to a movie on the mac, no matter how buried the movie is in folders, sub folders, etc
if I look at the sourcefullname field it is always simply mymovie.AVI there is NO path information.

Where is this information kept on the mac?

The problem I want to solve is to write an addin or macro or vb application that will step through all my presentations , find the movies, change the path to the structure I will create on a mac and be done with it.

One fix I suspect will work is to delete all the path information in the presentations, then move them to the mac and put the movies all in the same folder, not a great solution but will possibly work.

any ideas are greatly appreciated.

thanks
 
J

Jim Gordon MVP

Hi Gary,

This example from the Mac object editor help file may shed some light on the
topic for you. This example hints that you are on the right track, as
SourceFullName is indeed used for shape objects

With ActivePresentation.Slides(1).Shapes(1)
If .Type = msoLinkedOLEObject Then
With .LinkFormat
.SourceFullName = "Macintosh HD:Users:Shared:Wordtest.doc"
.AutoUpdate = ppUpdateOptionAutomatic
End With
End If
End With

Another help example shows that LinkFormat is also available

Use the LinkFormat property to return a LinkFormat object. The following
example loops through all the shapes on all the slides in the active
presentation and sets all linked Microsoft Excel worksheets to be updated
manually.
For Each sld In ActivePresentation.Slides
For Each sh In sld.Shapes
If sh.Type = msoLinkedOLEObject Then
If sh.OLEFormat.ProgID = "Excel.Sheet.8" Then
sh.LinkFormat.AutoUpdate = ppUpdateOptionManual
End If
End If
Next
Next

So it appears that the syntax between Mac and Windows should be similar.

The path separator on Macintosh is a colon : instead of a slash \

Can you post a bit more of your code? That might help troubleshooting.

Thanks.
 

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