View Single Post
  #5  
Old January 15th, 2005, 04:06 AM
Jeff Jones
external usenet poster
 
Posts: n/a
Default

Thank you Steve. I believe that, with your help, and that of others,
I'm sneaking up on a solution to this latest opportunity.

Take care,
Jeff

On Fri, 14 Jan 2005 22:34:10 EST, Steve Rindsberg
wrote:

First, with MS Word I have the normal.dot file and with MS Excel I
have the personal.xls file. Both hold macros or VBA code that can be
executed against any document or spreadsheet. Thus far and as near as
I can tell, PowerPoint doesn't have a counterpart generic template
that will retain macros that may be executed against any presentation.
Is this true?


Yes and no. You can't do something like this with a presentation but if you
write the code and turn it into an addin, once the addin's loaded it becomes,
for all practical purposes, part of PPT and stays that way until you unload it.

Create an ADD-IN with TOOLBARS that run macros
http://www.rdpslides.com/pptfaq/FAQ00031.htm

PowerPoint seems to be so freeform that even if I had a generic
template, there doesn't seem to be any way that I can select a single
TextFrame on the last slide, change the three links and then save and
close the presentation before doing the next in the folder. Have any
of you done anything like this?


Qualified yes. If the text frame in question is the normal body text
placeholder, it's possible to work with it. If it's any ol' text box, then the
problem becomes trickier.

On the other hand, you may not need to worry about the shapes at all.

Each slide has a hyperlinks collection; you can get at the address/subaddress
of each hyperlink w/o having to look for the shapes that contain them.

My testing shows that each TextFrame
has a different object number. Is this true?


Per slide, yes.

Have any of you
selected each TextFrame object in a presentation and tested it's
contents for a particular value?


Yes. Here's some sample code to get you started. Also have a look at the VBA
Programming section at http://www.pptfaq.com and the other pages it links to.

Sub Lime()

Dim oSl as Slide
Dim oSh as Shape
Dim oHl as Hyperlink

For each oSl in ActivePresentation.Slides
' display all of the text
For Each oSh in oSl.Shapes
If oSh.HasTextFrame Then
I oSh.TextFrame.HasText Then
Debug.Print oSh.TextFrame.TextRange.Text
End if
End if
Next ' Shape
' list the hyperlinks
For Each oHl in oSl.Hyperlinks
Debug.Print oHl.Address
Debug.Print oHl.SubAddress
Next ' Hyperlink
Next ' Slide

End Sub

-----------------------------------------
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
=============================================== =