Editando texto

Este tópico inclui exemplos do Visual Basic relacionados às tarefas identificadas nas seções a seguir.

Determinar se o texto está selecionadoRecolher uma seleção ou intervaloEstender uma seleção ou intervaloRedefinir uma seleção ou intervaloAlterar texto

Para obter exemplos e informações sobre outras tarefas de edição, consulte os seguintes tópicos:

Retornando texto de um documentoSelecionando texto em um documentoInserindo texto em um documentoManipulando uma parte de um documento

Determinar se o texto está selecionado

O Tipo](.. /.. /.. Propriedade /api/Word.Selection.Type.md) da propriedade Selection](.. /.. /.. Objeto /api/Word.Selection.md) retorna informações sobre o tipo de seleção. O exemplo a seguir exibirá uma mensagem se a seleção for um ponto de inserção.

Sub IsTextSelected() 
 If Selection.Type = wdSelectionIP Then MsgBox "Nothing is selected" 
End Sub

Recolher uma seleção ou intervalo

Use o método Collapse para recolher um objeto Selection ou um objeto Range no ponto inicial ou final. O exemplo a seguir recolhe a seleção para um ponto de inserção no início da seleção.

Sub CollapseToBeginning() 
 Selection.Collapse Direction:=wdCollapseStart 
End Sub

O exemplo a seguir cancela o intervalo até seu ponto final (após a primeira palavra) e adiciona novo texto.

Sub CollapseToEnd() 
 Dim rngWords As Range 
 
 Set rngWords = ActiveDocument.Words(1) 
 With rngWords 
 .Collapse Direction:=wdCollapseEnd 
 .Text = "(This is a test.) " 
 End With 
End Sub

Estender uma seleção ou intervalo

O exemplo a seguir usa o MoveEnd](.. /.. /.. Método /api/Word.Selection.MoveEnd.md) do objeto Selection para estender o final da seleção para incluir três palavras adicionais. Os métodos MoveLeft, MoveRight, MoveUp e Move Down também podem ser usados para estender um objeto Selection .

Sub ExtendSelection() 
 Selection.MoveEnd Unit:=wdWord, Count:=3 
End Sub

O exemplo a seguir usa o MoveEnd](.. /.. /.. Método /api/Word.Range.MoveEnd.md) do objeto Range para estender o intervalo para incluir os três primeiros parágrafos no documento ativo.

Sub ExtendRange() 
 Dim rngParagraphs As Range 
 
 Set rngParagraphs = ActiveDocument.Paragraphs(1).Range 
 rngParagraphs.MoveEnd Unit:=wdParagraph, Count:=2 
End Sub

Redefinir uma seleção ou intervalo

Use o método GetRange para redefinir um objeto Selection ou objeto Range existente. Para obter mais informações, consulte Trabalhando com o objeto Selection ou Trabalhando com objetos Range.

Alterar texto

Você pode alterar texto existente alterando o conteúdo de um intervalo. A instrução a seguir altera a primeira palavra no documento ativo definindo o Texto](.. /.. /.. Propriedade /api/Word.Range.Text.md) de um objeto Range para "O".

Sub ChangeText() 
 ActiveDocument.Words(1).Text = "The " 
End Sub

Você também pode usar o método Delete ou o objeto Selection ou o objeto Range para excluir o texto existente e inserir um novo texto usando o método InsertAfter ou o método InertBefore . O exemplo a seguir exclui o primeiro parágrafo do documento ativo e insere "New text".

Sub DeleteText() 
 Dim rngFirstParagraph As Range 
 
 Set rngFirstParagraph = ActiveDocument.Paragraphs(1).Range 
 With rngFirstParagraph 
 .Delete 
 .InsertAfter Text:="New text" 
 .InsertParagraphAfter 
 End With 
End Sub

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.