VBA - paste shape

G

Gregg

PPT 2002

Being that there will be lag before we upgrade to 2003, I'm forced to
deal with the AutoCorrec-Autolayout problem in 2002. I've successfully
created most of the code and almost done, but I'm perplexed about this
one small issue that's stopping me. (ARGHH!)

For my question, a "type 14 picture" is a picture inserted into a slide
while AutoCorrect-AutoLayout is enabled, resulting in a picture VBA
sees as a placeholder (msoPlaceholder). A "type 13 picture" is a
typical jpg (msoPicture).

Here's the simple situation:

1) I have a type 14 picture on a slide, generated from steps above.
2) With AutoCorrect-AutoLayout now DISabled, I copy the picture and
paste it.
3) It pastes as a type 13 type picture (perfect!), wheras the original
was a type 14.
4) BUT when I do the same thing via VBA, it produces a type 14 picture,
not a type 13 like the manual paste gave me.

So, why is it when I paste manually I get a type 13 but VBA gives me a
type 14? How can I make VBA do what the manual paste did? Is that
possible?

Here's a snippet of the code I used (The original type 14 picture is
selected at this point.) I also experimented with PasteSpecial.

ActiveWindow.Selection.ShapeRange.Copy
ActiveWindow.Selection.SlideRange.Shapes.Paste

Thanks to anyone who can try to figure this out.

-Gregg
 
G

Gregg

Nevermind. I got it. I used the following copy/paste code instead...

Windows(1).Selection.Copy
Windows(1).View.Paste

It successfully copied a type 14 picture to a type 13 picture.

<WHEW!>
 
S

Steve Rindsberg

Gregg said:
Nevermind. I got it. I used the following copy/paste code instead...

Windows(1).Selection.Copy
Windows(1).View.Paste

It successfully copied a type 14 picture to a type 13 picture.

<WHEW!>

Bizarre. Thanks for posting that.
 

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