Как скопировать макеты из главного представления в слайды PowerPoint?

Как скопировать макеты из главного представления в слайды PowerPoint?

Пользователь, с которым я работаю, случайно сделал всю свою презентацию в режиме мастера слайдов. То есть, вместо добавления слайдов, он создал макеты.

Есть простое частичное решение, которое заключается в простом добавлении новых слайдов с использованием каждого из макетов. Это приводит к презентации, которая может быть отображена нормально, но имеет определенные ограничения. В частности, мы много сотрудничаем здесь, и при предоставлении этого файла другим пользователям никто другой не сможет редактировать текст на слайдах, не перейдя в главный вид.

Все это можно было бы перестроить с нуля, но оно очень большое, поэтому это заняло бы слишком много времени.

решение1

Один (возможно ошибочный) подход:

Перейдите к каждому макету в главном представлении
Нажмите Ctrl+A, чтобы выбрать все
Нажмите Ctrl+C, чтобы скопировать
Вернуться в обычный вид
Добавить новый слайд на основе ПУСТОГО макета
Нажмите Ctrl+V, чтобы вставить содержимое, которое вы только что скопировали из макета
После завершения работы со всеми макетами вернитесь в главное представление, выберите и удалите содержимое из каждого макета.

Недостаток? Это даст вам кучу слайдов, которые больше не связаны с макетами, которые будут управлять внешним видом презентации. Чтобы внести какие-либо широкомасштабные изменения, вам придется изменить каждый слайд. Но это относительно быстрое решение, и по крайней мере у вас останутся редактируемые слайды.

Если презентация будет использоваться более чем несколько раз и редактироваться разными людьми, более полное исправление может оказаться более целесообразным, хотя это и займет гораздо больше времени.

Это будет включать в себя выполнение вышеописанных действий, а затем просмотр макетов и удаление любого контента, который не является а) заполнителем или б) не требуется на каждом слайде в соответствии с макетом.

Затем вам нужно будет применить соответствующий макет к каждому слайду, который изначально был на нем основан, и, наконец, при необходимости, скопировать текст из случайных текстовых полей в соответствующие заполнители.

Если вы решите пойти по этому пути, вот макрос, который удалит все не-заполнители фигур из каждого мастера/макета в презентации. Он ни в коем случае не сделает всю работу за вас, но по крайней мере автоматизирует довольно утомительную ее часть:

Sub DeleteNonPlaceholderShapes()
' Deletes non-placeholder shapes from
' each slide master and layout in a presentation
' Run this on a COPY of your presentation, never the only original.

Dim oDes As Design
Dim oLay As CustomLayout
Dim oSh As Shape

With ActivePresentation
    For Each oDes In .Designs
        Call HandleOneContainerObject(oDes.SlideMaster)
        For Each oLay In oDes.SlideMaster.CustomLayouts
            Call HandleOneContainerObject(oLay)
        Next
    Next

End With

End Sub

Sub HandleOneContainerObject(oObject As Object)

Dim x As Long

For x = oObject.Shapes.Count To 1 Step -1
    If Not oObject.Shapes(x).Type = 14 Then
        oObject.Shapes(x).Delete
    End If
Next

End Sub

Связанный контент