Я должен изменить расположение слайда программно с C# (Add-In Express, 2009 для Office и.NET используется). Если новое расположение является предопределенным затем, все прекрасно, но не, если я должен установить пользовательский макет как новый (без воссоздания слайда). К сожалению, я не нашел информации о том, как сделать это, справочная документация объектной модели PowerPoint не отвечала мне также. Существует только способность создать новый слайд, который использует пользовательский макет.
Я сделал эксперимент и удостоверился что Slide
объект остался бывшим тем же, в то время как я изменял расположение и предопределенные и пользовательские. Я не хочу создавать новый слайд, когда я должен просто переключить расположение.
Действительно ли это возможно вообще? Помогите мне найти способ сделать его.
Единственный способ, которым это будет работать, - это если ваш пользовательский макет действительно будет сначала использован в колоде. Затем вы просто берете этот макет и применяете его к желаемому слайду. Вы можете программно создать новый слайд с вашим настраиваемым макетом, использовать его для применения к другому слайду, а затем удалить этот новый слайд, который вы создали. Вот код для применения настраиваемого макета (обратите внимание, что мой 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