The next question is how to to make that chart link using PasteSpecial in
VBA. Linked ranges work just fine with this Excel code:
Sheet15.Range("Table4").Copy
Set Pasted =
PPTApp.ActivePresentation.Slides(4).Shapes.PasteSpecial(Link:=msoTrue)
but I have to resort to this for charts:
Sheet17.ChartObjects("chart 4").CopyPicture
Set Pasted = PPTApp.ActivePresentation.Slides(9).Shapes.Paste
For some reason the chart object that's copied in Excel using a plain
"ChartObjects...Copy " is not the right data type to do a linked
PasteSpecial, and I get this error: "Shapes (unknown member): Invalid
request. The specified data type is unavailable." I've tried AddOLEObject
and every kind of data-type specification I can imagine, but nothing works.
Does anyone know the magic word?
Bruce Cooley
"Steve Rindsberg" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
: > To keep ppt file size small, I copy the charts and paste
: > them as pictures -- each one done seperately. I would
: > prefer to use the ppt link feature, update the excel
: > spreadsheet, update the links in ppt, and be done.
: > However, this makes the ppt file too large (and I don't
: > want to provide the spreadsheet to those who get the
: > presentation).
:
: What you've described is *embedded* OLE objects, not linked ones.
: This is what you get when you copy/paste from Excel normally.
:
: Instead, select the Excel content, copy, then in PowerPoint choose Edit,
: Paste Special and put a check mark next to Link.
:
: This leaves the Excel data external to PPT (as in: smaller files, data not
: available to others unless you choose to provide it)
:
:
:
:
|