Экспортировать только слайды в определенном разделе в Powerpoint VBA - PullRequest
0 голосов
/ 01 февраля 2019

У меня есть код, который экспортирует слайды в файлы PNG, если они соответствуют определенным критериям (т.е. имеют определенную именованную форму на слайде).Будут случаи, когда у слайдов не будет известных имен фигур, но они будут находиться внутри именованного «раздела».

Я знаю, что должен каким-то образом использовать ActivePresentation.SectionProperties, но я не уверен, как это сделать.Я пробовал вещи в соответствии с кодом ниже, но безуспешно.В этом примере название раздела «Тест».Там будет много разных разделов, и мне нужно сделать это для нескольких из этих разделов.Любая помощь приветствуется.Спасибо!

Dim sld As Slide
i = 1

For Each sld in ActivePresentation.Slides

If ActivePresentation.SectionProperties.Name("Test") Then
   ActivePresentation.Slides(i).Export filenamepng & "TEST" & i & ".png", "PNG"
End If

i = i + 1

Next

1 Ответ

0 голосов
/ 01 февраля 2019

@ Hunter21188

Я думаю, это то, что вам нужно.

Вы проверите, к какому разделу относится каждый слайд.После этого вы проверяете, если это из раздела «Тест», если это правда, понял!Экспорт.

Об.Функция конвертирует SectionIndex из атрибута слайда в имя раздела, которого нет в коллекции слайдов.

Sub Test_Export()

Dim sld As Slide
i = 1

DesiredSection = SectionIndexOf("Test")

For Each sld In ActivePresentation.Slides

If sld.sectionIndex = DesiredSection Then
   ActivePresentation.Slides(i).Export filenamepng & "TEST" & i & ".png", "PNG"
End If

i = i + 1

Next


End Sub

Function SectionIndexOf(sSectionName As String) As Long
    Dim x As Long
    With ActivePresentation.SectionProperties
        For x = 1 To .Count
            If .Name(x) = sSectionName Then
                SectionIndexOf = x
            End If
        Next
    End With
End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...