M
matthewgdodds
I'm in the process of writing a macro to reduce the size of powerpoint
files with embedded and/or linked excel charts.
Thanks to previous contributions to this forum I have the
ungroup.ungroup.regroup conversion of the charts to groups in place.
This reduces the presentation's size by a useful ~50%.
However, if I export as GIFs the charts from the individual excel files
and reconstitute the presentation, its size is reduced to ~4% of the
original. So conversion to GIFs is the objective.
I would like to be able to do this direct in the presentation by VBA.
However, the only way I have been able to do this is first to SELECT
the group, save its position coordinates, then use saveas so write a
GIF version of the group to disc, then delete the group, and finally
reinstate the original appearance by importing the just-created GIF.
I have a couple of objections to this approach.
1. I learnt the hard way in excel VBA that selecting things is best
avoided if possible; so can anyone help with a snippet that will allow
GIF creation from a group simply by reference to it (by index or name
or .. something), rather than necessitating its selection??
2. I would also prefer not to be writing the GIFs to disc - for the
same reason as I would prefer not to select the shapes - it all takes
time, and besides I'll have to delete them afterwards to tidy up (still
more time taken); so can anyone help with a wholly virtual approach
which can generate the GIF in memory (or to clipboard??) from which it
can be pasted back in place of the original group?
Thanks in advance for your suggestions
files with embedded and/or linked excel charts.
Thanks to previous contributions to this forum I have the
ungroup.ungroup.regroup conversion of the charts to groups in place.
This reduces the presentation's size by a useful ~50%.
However, if I export as GIFs the charts from the individual excel files
and reconstitute the presentation, its size is reduced to ~4% of the
original. So conversion to GIFs is the objective.
I would like to be able to do this direct in the presentation by VBA.
However, the only way I have been able to do this is first to SELECT
the group, save its position coordinates, then use saveas so write a
GIF version of the group to disc, then delete the group, and finally
reinstate the original appearance by importing the just-created GIF.
I have a couple of objections to this approach.
1. I learnt the hard way in excel VBA that selecting things is best
avoided if possible; so can anyone help with a snippet that will allow
GIF creation from a group simply by reference to it (by index or name
or .. something), rather than necessitating its selection??
2. I would also prefer not to be writing the GIFs to disc - for the
same reason as I would prefer not to select the shapes - it all takes
time, and besides I'll have to delete them afterwards to tidy up (still
more time taken); so can anyone help with a wholly virtual approach
which can generate the GIF in memory (or to clipboard??) from which it
can be pasted back in place of the original group?
Thanks in advance for your suggestions