Método TextRange.Replace (PowerPoint)

Localiza o texto específico em um intervalo de texto, substitui o texto localizado com uma cadeia de caracteres especificada e retorna um objeto TextRange que representa a primeira ocorrência do texto localizado. Retorna Nothing se nenhuma correspondência for encontrada.

Sintaxe

expressão. Substituir (FindWhat, ReplaceWhat, After, MatchCase, WholeWords)

Expressão Uma variável que representa um objeto TextRange .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Findwhat Obrigatório String O texto a ser pesquisado.
ReplaceWhat Obrigatório String O texto a ser substituído pelo texto localizado.
After Opcional Integer A posição do caractere (no intervalo de texto especificado) após o qual você deseja pesquisar pela próxima ocorrência do FindWhat. Por exemplo, se deseja pesquisar pelo quinto caractere do intervalo de texto, especifique 4 para After. Se esse argumento for omitido, o primeiro caractere do intervalo de texto será utilizado como o ponto inicial da pesquisa.
MatchCase Opcional MsoTriState Determina se será feita distinção entre maiúsculas e minúsculas.
Palavras Inteiras Opcional MsoTriState Determina se devem ser localizadas somente palavras inteiras.

Valor de retorno

TextRange

Comentários

O valor do parâmetro MatchCase pode ser uma destas constantes MsoTriState.

Constante Descrição
msoFalse O padrão. Não faz distinção entre caracteres maiúsculos e minúsculos.
msoTrue Faz distinção entre caracteres maiúsculos e minúsculos.

O valor do parâmetro WholeWords pode ser uma destas constantes MsoTriState.

Constante Descrição
msoFalse O padrão. Não localiza somente palavras inteiras.
msoTrue Localiza somente palavras inteiras.

Exemplo

Este exemplo substitui cada ocorrência de "like" como palavra inteira em todas as formas da apresentação ativa por "NOT LIKE".

Sub ReplaceText()

    

    Dim oSld As Slide

    Dim oShp As Shape

    Dim oTxtRng As TextRange

    Dim oTmpRng As TextRange

     

    Set oSld = Application.ActivePresentation.Slides(1)

    

    For Each oShp In oSld.Shapes

        Set oTxtRng = oShp.TextFrame.TextRange

        Set oTmpRng = oTxtRng.Replace(FindWhat:="like", _
            Replacewhat:="NOT LIKE", WholeWords:=True)

        Do While Not oTmpRng Is Nothing
            Set oTxtRng = oTxtRng.Characters(oTmpRng.Start + oTmpRng.Length, _
                oTxtRng.Length)

            Set oTmpRng = oTxtRng.Replace(FindWhat:="like", _
                Replacewhat:="NOT LIKE", WholeWords:=True)
        Loop

    Next oShp



End Sub

Confira também

Objeto TextRange

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.