Как найти и заменить текст на мастер-слайдах и макетных слайдах?

Контекст

У меня есть мастер-слайд и 60 макетов. Не спрашивайте почему, но я хотел бы найти и заменить текст в фиктивных текстах, заголовках в мастер-слайде и его 60 слайдах макета.

Что я пробовал …

… – это переключиться на образец слайдов, а затем использовать диалоговое окно «Найти», нажав ctrl + F. Однако, когда я запускаю кнопку поиска, [Find Next], PowerPoint мгновенно переключается обратно в обычный режим просмотра и выполняет поиск в реальном содержании презентации.

Вопрос

Есть ли способ найти и заменить в мастер-слайде и его макетных слайдах в текстах-пустышках?

1 ответ
1

Оказывается, вы можете выполнить поиск / замену с помощью VBA:

' Use this to test the replacement
' Usage:  Call ReplaceTextInLayouts (text to replace, text to replace it with)
Sub TestReplace()
    Call ReplaceTextInLayouts("BETTER", "WORSE")
End Sub

Sub ReplaceTextInLayouts(sSearchFor As String, sReplaceWith As String)

    Dim oSh As Shape
    Dim oLay As CustomLayout
    
    With ActivePresentation
        For Each oLay In .SlideMaster.CustomLayouts
            For Each oSh In oLay.Shapes
                If oSh.HasTextFrame Then
                    With oSh.TextFrame.TextRange
                        If InStr(.Text, sSearchFor) > 0 Then
                           Call .Replace(sSearchFor, sReplaceWith)
                        End If
                    End With
                End If
            Next
        Next
    End With
End Sub

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *