Note: The other languages of the website are Google-translated. Back to English

Como localizar e substituir texto no documento do Word do Excel?

No documento do Word, podemos aplicar a função Localizar e substituir para localizar e substituir um texto rapidamente. Mas, se houver vários textos que precisam ser encontrados e substituídos, insira o texto um por um no recurso Localizar e substituir será demorado. Nesse caso, você pode inserir os textos localizar e substituir na lista de células e com a ajuda do código VBA no Excel para realizar esse trabalho com facilidade. Neste artigo, também apresentarei um recurso útil para localizar e substituir textos em vários documentos do Word.

Localize e substitua vários textos em um documento do Word do Excel com código VBA

Localize e substitua vários textos em vários documentos do Word do Excel com código VBA

Encontre e substitua vários textos em vários documentos do Word com um recurso poderoso


Localize e substitua vários textos em um documento do Word do Excel com código VBA

Se você deseja localizar e substituir alguns textos em apenas um arquivo do Word, o código VBA a seguir pode fazer um favor.

1. Na planilha do Excel, crie uma coluna contendo os textos que você deseja localizar e substituir e outra coluna com os textos a serem substituídos conforme a captura de tela abaixo mostrada. E então pressione Alt + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.

2. Então clique inserção > Módulo, copie e cole o código VBA abaixo na janela.

Código VBA: Localize e substitua vários textos em um arquivo do Word

Sub replace_texts_range_of_cells()
'Updateby ExtendOffice
Dim xWordApp As Word.Application
Dim xDoc As Word.Document
Dim xRng As Range
Dim I As Integer
Dim xFileDlg As FileDialog
On Error GoTo ExitSub
Set xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
xFileDlg.AllowMultiSelect = False
xFileDlg.Filters.Add "Word Document", "*.docx; *.doc; *.docm"
xFileDlg.FilterIndex = 2
If xFileDlg.Show <> -1 Then GoTo ExitSub
Set xRng = Application.InputBox("Please select the lists of find and replace texts (Press Ctrl key to select two same size ranges):", "Kutools for Excel", , , , , , 8)
If xRng.Areas.Count <> 2 Then
  MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
  GoTo ExitSub
End If
If (xRng.Areas.Item(1).Rows.Count <> xRng.Areas.Item(2).Rows.Count) Or _
  (xRng.Areas.Item(1).Columns.Count <> xRng.Areas.Item(2).Columns.Count) Then
  MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
  GoTo ExitSub
End If
Set xWordApp = CreateObject("Word.application")
xWordApp.Visible = True
Set xDoc = xWordApp.Documents.Open(xFileDlg.SelectedItems.Item(1))
For I = 1 To xRng.Areas.Item(1).Cells.Count
  With xDoc.Application.Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = xRng.Areas.Item(1).Cells.Item(I).Value
    .Replacement.Text = xRng.Areas.Item(2).Cells.Item(I).Value
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
  End With
  xDoc.Application.Selection.Find.Execute Replace:=wdReplaceAll
Next
ExitSub:
  Set xRng = Nothing
  Set xFileDlg = Nothing
  Set xWordApp = Nothing
  Set xDoc = Nothing
End Sub

3. Após colar o código, ainda no Microsoft Visual Basic para Aplicações janela, clique em Ferramentas > Referência, veja a captura de tela:

4. No pop-out Referências - VBAProject caixa de diálogo, selecione o Biblioteca de objetos do Microsoft Word 16.0 na caixa de listagem, veja a captura de tela:

5. Clique OK botão para fechar a caixa de diálogo, e agora, pressione F5 key para executar este código, na janela pop-up Browse, selecione o arquivo do Word que você deseja substituir os textos, veja a captura de tela:

6. Então clique OK, na caixa de diálogo a seguir, pressione Ctrl para selecionar o texto original e as novas células de texto separadamente que você deseja usar, veja a captura de tela:

7. E então, clique OK botão, agora, os textos são encontrados e substituídos pelos novos textos em seu documento especificado, e o arquivo está abrindo também, você deve salvá-lo para manter as alterações.


Localize e substitua vários textos em vários documentos do Word do Excel com código VBA

Aqui, também crio um código VBA para localizar e substituir vários textos em vários documentos do Word, faça assim:

1. Abra o arquivo Excel que contém duas colunas de valores para substituir e substituir conforme a captura de tela abaixo mostrada e, em seguida, pressione Alt + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.

2. Então clique inserção > Módulo, copie e cole o código VBA abaixo na janela.

Código VBA: Localize e substitua vários textos em vários arquivos do Word

Sub FindReplaceAcrossMultipleWordDocuments()
'Updateby ExtendOffice
Dim xWordApp As Word.Application
Dim xDoc As Word.Document
Dim xRng As Range
Dim I As Integer
Dim xFolderDlg As FileDialog
Dim xFSO As Scripting.FileSystemObject
Dim xFile As File
On Error GoTo ExitSub
Set xFolderDlg = Application.FileDialog(msoFileDialogFolderPicker)
If xFolderDlg.Show <> -1 Then GoTo ExitSub
Set xRng = Application.InputBox("Please select the lists of find and replace texts (Press Ctrl key to select two same size ranges", "Kutools for Excel", , , , , , 8)
If xRng.Areas.Count <> 2 Then
  MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size", vbInformation + vbOKOnly, "Kutools for Excel"
  GoTo ExitSub
End If
If (xRng.Areas.Item(1).Rows.Count <> xRng.Areas.Item(2).Rows.Count) Or _
  (xRng.Areas.Item(1).Columns.Count <> xRng.Areas.Item(2).Columns.Count) Then
  MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
  GoTo ExitSub
End If
Set xFSO = New Scripting.FileSystemObject
Set xWordApp = CreateObject("Word.application")
xWordApp.Visible = True
For Each xFile In xFSO.GetFolder(xFolderDlg.SelectedItems(1)).Files
  If VBA.InStr(xFile.Type, "Microsoft Word") > 0 Then
    Set xDoc = xWordApp.Documents.Open(xFile.Path)
    For I = 1 To xRng.Areas.Item(1).Cells.Count
      With xDoc.Application.Selection.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = xRng.Areas.Item(1).Cells.Item(I).Value
        .Replacement.Text = xRng.Areas.Item(2).Cells.Item(I).Value
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
      End With
      xDoc.Application.Selection.Find.Execute Replace:=wdReplaceAll
    Next
    xDoc.Close wdSaveChanges
  End If
Next
xWordApp.Quit
MsgBox "The Find and Replace has been completed", vbInformation + vbOKOnly, "Kutools for Excel"
ExitSub:
  Set xRng = Nothing
  Set xFolderDlg = Nothing
  Set xWordApp = Nothing
  Set xDoc = Nothing
End Sub

3. Ainda no Microsoft Visual Basic para Aplicações janela, clique em Ferramentas > Referência, Na Referências - VBAProject caixa de diálogo, selecione o Biblioteca de objetos do Microsoft Word 16.0 e Tempo de execução de scripts da Microsoft opções da caixa de listagem, veja a captura de tela:

4. Depois de verificar as duas opções, e clique em OK para fechar a caixa de diálogo e, em seguida, continue pressionando o botão F5 chave para executar este código, na abertura Procurar janela, escolha uma pasta que contenha os documentos do Word que você deseja realizar a localização e substituição, veja a captura de tela:

5. Clique OK botão, na caixa de diálogo exibida, pressione Ctrl para selecionar o texto original e as novas colunas de texto separadamente que você deseja usar, veja a captura de tela:

6. Finalmente, clique em OK, e os textos originais são substituídos pelos novos nesses arquivos, após a conclusão, uma caixa de diálogo será exibida conforme a captura de tela abaixo:

7. Clique OK para fechar o diálogo. E você pode acessar os arquivos para verificar os resultados convertidos.


Encontre e substitua vários textos em vários documentos do Word com um recurso poderoso

Nesta seção, falarei sobre como localizar e substituir textos em lotes em vários documentos do Word do Word em vez do Excel. Com uma ferramenta poderosa-Kutools for Word, você pode localizar e substituir rapidamente os textos específicos e substituí-los por novos textos no arquivo principal, cabeçalho, rodapé, comentários, etc. e destacar os resultados conforme necessário.

1. Abra um arquivo do Word e clique em Kutools Plus > Localização e substituição em lote, veja a captura de tela:

2. No aberto Localização e substituição em lote caixa de diálogo, execute as seguintes operações:

  • Clique Adicionar botão para adicionar os arquivos do Word onde você deseja localizar e substituir textos;
  • No painel esquerdo, clique em Adicionar linha da fita superior;
  • No campo inserido, insira o texto original e o novo texto no Procure e Substituir colunas separadamente que você deseja localizar e substituir. Além disso, você pode especificar uma cor para destacar os textos substituídos conforme necessário.

3. Após criar os critérios de pesquisa, clique em Substituir botão para ir para o Resultado da Antevisão guia para visualizar os resultados de localizar e substituir. Veja captura de tela:

4. Então clique Fechar botão e uma caixa de prompt é exibida para lembrá-lo se você deseja salvar este cenário, clique em Sim para salvá-lo e clique em Não para ignorá-lo, consulte a captura de tela:

Tips: Este recurso também pode ajudar a realizar as seguintes operações:
  • Localize e substitua caracteres especiais em vários documentos do Word;
  • Localize e substitua várias strings com formatação específica em vários documentos do Word;
  • Localize e substitua várias strings em vários arquivos txt/htm/html.

Clique para saber informações mais detalhadas deste recurso…


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
parte inferior da aba do escritório
Comentários (4)
Ainda não há classificações. Seja o primeiro a avaliar!
Este comentário foi feito pelo moderador no site
Saudações,
o primeiro código:
Código VBA: Localize e substitua vários textos em um arquivo do Word

thows error: erro de compilação tipo definido pelo usuário não definido
https://i.imgur.com/FZPBy4I.png
Este comentário foi feito pelo moderador no site
Olá, Erik
O código funciona bem.
Talvez você não tenha checado Biblioteca de objetos do Microsoft Word 16.0 de Referências - VBAProject caixa de diálogo.
Isso significa que você pode perder a Etapa 3 e a Etapa 4 deste artigo.
Por favor, tente novamente, se você ainda tiver qualquer outro problema, por favor, comente aqui.

https://www.extendoffice.com/images/stories/comments/comment-skyyang/2023-comment/doc-find-replace-word-file-excel.png
Este comentário foi feito pelo moderador no site
Isso não funciona.

Erro de compilação: tipo definido pelo usuário não definido
Este comentário foi feito pelo moderador no site
Olá Param
O código funciona bem.
Talvez você não tenha checado Biblioteca de objetos do Microsoft Word 16.0 de Referências - VBAProject caixa de diálogo.
Isso significa que você pode perder a Etapa 3 e a Etapa 4 deste artigo.
Por favor, tente novamente, se você ainda tiver qualquer outro problema, por favor, comente aqui.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/2023-comment/doc-find-replace-word-file-excel.png
Não há comentários postados aqui ainda
Deixe o seu comentário
Postando como convidado
×
Avalie esta postagem:
0   Personagens
Locais sugeridos

Siga-nos

Copyright © 2009 - www.extendoffice.com. | Todos os direitos reservados. Distribuído por ExtendOffice. | | | Mapa do site
Microsoft e o logotipo do Office são marcas comerciais ou marcas registradas da Microsoft Corporation nos Estados Unidos e / ou em outros países.
Protegido por Sectigo SSL