Make a presentation with actxserver without displaying the presentation
11 次查看(过去 30 天)
显示 更早的评论
Hello,
I am using the actxserver() method to make PowerPoint presentations from Matlab. Is it possible to create/ open a presentation without displaying the presentation (similar to invisable figures)? I am using the following code (a method within a class):
The Visible property throws an error.
actXserver = actxserver('PowerPoint.Application'); %Create an ActiveX object
%actXserver.Visible = 0; -> Does not work...
obj.actserverPP_1 = actXserver;
actXinterface = actXserver.Presentation.Open( fullfile(obj.templatePath_1, obj.templateName_1) ); %Open an existing presentation by supplying the fullpath to the file
obj.presentationInterface_1 = actXinterface;
0 个评论
采纳的回答
Cris LaPierre
2023-4-28
编辑:Cris LaPierre
2023-4-28
It seems the current way to do this in VBA code would use the following syntax
You can set WithWindow to false, which means the file that is opened will not be visible.
The following code worked for me. Note that you must include the full path to the presentation.
h = actxserver('PowerPoint.Application'); %Create an ActiveX object
pres = h.Presentations.Open(fullfile(path,ppt),0,0,0));
0 个评论
更多回答(1 个)
Cris LaPierre
2023-4-25
See this example: https://www.mathworks.com/matlabcentral/answers/1793235-axes-box-incompletely-copied-to-clipboard#answer_1040800
Changing
- h.Visible = 1;
to
h.Visible = 0;
should do what you want.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Use COM Objects in MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!