activex PowerPoint Application Saving as ".ppt" default, not ".pptx" ?

I am trying to write a powerpoint using activex and in doing so specify the name of the file I would like to save as something like 'MySlides.pptx'.
I have 2010 office loaded on my PC, but for some reason it is saving the new file as 'MySlides.pptx.ppt' which is defaulting to 2007 format of '.ppt'. How can I specify what format of slides I would like to open and save the presentation as? Thanks
%HERE IS HOW I CALL THE CODE, SIMPLIFIED
filespec = 'MySlides.pptx';
ppt = actxserver('PowerPoint.Application');
op = invoke(ppt.Presentations,'Open',filespec,[],[],0);
%THEN MODIFY SLIDES...
%NOW SAVE
invoke(op,'SaveAs',filespec,1);

 採用された回答

Fangjun Jiang
Fangjun Jiang 2012 年 1 月 4 日

0 投票

try invoke(op,'SaveAs',filespec,11); 11 is ppSaveAsDefault. Go to PowerPoint help, Visual Basic Reference, Enumerations, PpSaveAsFileType to see all the enumeration values.

2 件のコメント

Kevin
Kevin 2012 年 1 月 4 日
Excellent. Worked like a charm, thank you.
Fangjun Jiang
Fangjun Jiang 2012 年 1 月 4 日
If that is the case, maybe invoke(op,'SaveAs',filespec) is sufficient.

サインインしてコメントする。

その他の回答 (1 件)

Tony
Tony 2013 年 5 月 17 日

0 投票

You may effectively work with powerpoint files with to repair ppt file

カテゴリ

ヘルプ センター および File Exchange で MATLAB Report Generator についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by