代码之家  ›  专栏  ›  技术社区  ›  SRT HellKitty

Matlab ActiveX与python win32com

  •  2
  • SRT HellKitty  · 技术社区  · 7 年前

    我正在尝试将用python创建的程序迁移到matlab。此应用程序使用win32com来写入/读取Excel和PowerPoint,我假设ActiveX命令非常相似/相同,因为它基于VBA。如果有人能阐明这一点并帮助解决以下错误,我将不胜感激!!

    所以我有一个可以工作的python代码

    PPT_App = win32com.client.Dispatch("PowerPoint.Application")
    Presentation = PPT_App.Presentations.Add()
    Cover_Slide = Presentation.Slides.Add(1,12)
    

    但是当我把它转换成matlab时;

    PPT_App = actxserver('PowerPoint.Application');
    Presentation = PPT_App.Presentations.Add();
    Cover_Slide = Presentation.Slides.Add(1,12);
    

    它在第3行定义“封面幻灯片”时给出了这个错误;

    Undefined function 'Add' for input arguments of type 'Interface.91493469_5A91_11CF_8700_00AA0060263B'.
    

    有人知道为什么会发生这种情况,或者我在哪里可以找到有关ActiveX差异的信息?

    1 回复  |  直到 7 年前
        1
  •  0
  •   fuglede    7 年前

    win32com

    Slides Add AddSlide PpSlideLayout enum CustomLayout Presentation.SlideMaster

    Presentation = PPT_App.Presentations.Add();
    Layout = Presentation.SlideMaster.CustomLayouts.Item(7)
    Presentation.Slides.AddSlide(1, Layout)