• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1711
  • Last Modified:

PowerPoint 2003 VBA - shape names

Pretty quick and simple...  I have data in an Access database that I'm tyring to DAO out into pre-existing tables in PowerPoint (2003). Formatting adustments may need to be made to the tables also.

Bottom line...PowerPoint shapes (names) are driving me nuts as they seem to change when I alter some part of the table - i.e., in the PPT file, I may have (example) a table called "Group 22".  Fine.  However, say I select a cell or two and apply a fill.  When I go back out and select the whole table and pull the shape name, it's now "Group 23".  ???   Adding a fill to another cell - name is now "Group 24".  Change the border on one of the cells = "Group 33".  Merge a couple cells = "Group 36".

I need these tables to stay fixed so my code can deal with them.  I saw a similar posting on here, but the Experts couldn't reproduce the problem and the user developed a workaround.  I actually worked around this on a previous project by creating the tables from scratch first -which I can't do here as there are 30+ pages of them and the formatting is quite complex.

I have tried assigning names to them in VBA, but still get the name-change issue once I change any part of the table's formatting.  Do PowerPoint objects have any sort of Tag property (like Access controls) that can be referenced instead?

Any other ideas, tips, suggestions and/or answers are greatly appreciated.  Thanks much!
0
CThomp2005
Asked:
CThomp2005
2 Solutions
 
Chris BottomleySoftware Quality Lead EngineerCommented:
They do indeed have a tag, the messiest part is running a process to identify which tags have which names at a given time.  Can you supply an example or is it data sensitive?

For information about an example of linking tags to slides, (in your case of course you want shapes to tags but same idea hopefully) look at http://www.experts-exchange.com/Software/Office_Productivity/Office_Suites/MS_Office/Powerpoint/Q_24285203.html which whilst it related to slides, the graphics such as I have seen also have a tab associated.

Chris
0
 
CThomp2005Author Commented:
Thanks for the reply, Chris...

As you attest, I have indeed found the Tags property of the Shapes I'm trying to manipulate (I believe under ShapeRange - activewindow.selection.shaperange.tags).  I wrote a little macro to assign the tag names and values to all the tables in my pres, and proceeded to write the rest of the code after that.

I originally coded to reference the tables' shape names, but at some point it stopped working - as I suspected it would - after manipulating the formatting of the tables.  I switched to using a loop on each slide, running through the shapes to find the shape that had the tag value assigned, and then selected it.  After that, was pretty easy.

A royal pain having to run a loop on each slide to find the shape/table you want, instead of being able to reference the shape/table directly.

Thanks much for your confirmation and link...
0
 
JSRWilsonCommented:
You should be able to apply a "fixed" shape name

ActiveWindow.Selection.ShapeRange(1).Name="myname" for example
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: CompTIA Cloud+

The CompTIA Cloud+ Basic training course will teach you about cloud concepts and models, data storage, networking, and network infrastructure.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now