如何在PowerPoint中以编程方式更改幻灯片布局?

kat*_*e n 5 c# powerpoint

我需要使用C#更改幻灯片的布局(使用Add-In Express 2009 for Office和.NET).如果新布局是预定义的布局,那么一切都很好,但如果我需要将自定义布局设置为新布局(没有幻灯片重新创建)则不行.不幸的是,我没有找到任何关于如何做的信息,PowerPoint对象模型参考文档也没有回答我.只能创建使用自定义布局的新幻灯片.

我已经做了一个实验并确保Slide对象保持不变,而我一直在更改预定义和自定义布局.当我只需要切换布局时,我不想创建新的幻灯片.

有可能吗?请帮我找到一种方法.

Tod*_*ain 5

它起作用的唯一方法是首先在甲板中实际使用您的自定义布局。然后您只需采用该布局并将其应用于您想要的幻灯片。您可以使用自定义布局以编程方式创建新幻灯片,将其布局应用于另一张幻灯片,然后删除您创建的新幻灯片。这是应用自定义布局的代码(请注意,我的ap.Slides(2)是自定义布局)

Sub ChangeLayout()
    Dim ap As Presentation
    Set ap = ActivePresentation
    Dim slide1 As Slide
    Set slide1 = ap.Slides(1)
    Dim customLayout As PpSlideLayout
    customLayout = ap.Slides(2).Layout
    slide1.Layout = ly
End Sub
Run Code Online (Sandbox Code Playgroud)