Come trovare e sostituire più testi in Word utilizzando Excel?
Author: XiaoyangLast Modified: 2025-05-30
In Microsoft Word, la funzione Trova e Sostituisci è un modo efficiente per cercare e sostituire rapidamente testi specifici. Tuttavia, quando è necessario sostituire più termini diversi, inserirli manualmente uno alla volta può essere dispendioso in termini di tempo.
Per semplificare questo processo, puoi utilizzare Excel per creare un elenco dei testi da trovare e sostituire, quindi automatizzare il compito con un semplice codice VBA. Questa guida ti mostrerà come utilizzare Excel e VBA per trovare e sostituire più testi all'interno di un singolo documento Word. Inoltre, ti mostrerò come estendere questa operazione a più documenti e introdurre una potente funzionalità di Kutools per la sostituzione di testo in batch.
Trova e sostituisci più testi in un documento Word da Excel con codice VBA
Se vuoi trovare e sostituire alcuni testi in un solo file Word, il seguente codice VBA può esserti utile.
1. Nel foglio di lavoro di Excel, crea una colonna contenente i testi che desideri trovare e sostituire e un'altra colonna con i testi da usare per la sostituzione, come mostrato nello screenshot sottostante. Successivamente, premi contemporaneamente i tasti Alt+ F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Quindi, fai clic su Inserisci > Modulo, copia e incolla il seguente codice VBA nella finestra.
Codice VBA: Trova e sostituisci più testi in un file 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. Dopo aver incollato il codice, ancora nella finestra Microsoft Visual Basic for Applications, fai clic su Strumenti > Riferimenti, vedi screenshot:
4. Nella finestra di dialogo Riferimenti – VBAProject che si apre, seleziona Microsoft Word 16.0 Object Library dall'elenco, vedi screenshot:
5. Fai clic sul pulsante OK per chiudere la finestra di dialogo, e ora premi il tasto F5 per eseguire questo codice. Nella finestra Sfoglia che appare, seleziona il File Word in cui desideri sostituire i testi, vedi screenshot:
6. Quindi, fai clic su OK, nella finestra di dialogo successiva, premi il tasto Ctrl per selezionare separatamente le celle del testo originale e del nuovo testo che desideri utilizzare, vedi screenshot:
7. Infine, fai clic sul pulsante OK, ora i testi sono stati trovati e sostituiti con i nuovi testi nel documento specificato, e il file si aprirà automaticamente. Ricordati di salvarlo per mantenere le modifiche.
Trova e sostituisci più testi in più documenti Word da Excel con codice VBA
Ho creato anche un codice VBA per aiutarti a trovare e sostituire più testi in più documenti Word. Segui questi passaggi:
1. Apri il file Excel che contiene due colonne di valori da sostituire e con cui sostituire, come mostrato nello screenshot sottostante, e poi premi contemporaneamente i tasti Alt+ F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Quindi, fai clic su Inserisci > Modulo, copia e incolla il seguente codice VBA nella finestra.
Codice VBA: Trova e sostituisci più testi in più file 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. Ancora nella finestra Microsoft Visual Basic for Applications, fai clic su Strumenti > Riferimenti, nella finestra di dialogo Riferimenti – VBAProject, seleziona le opzioni Microsoft Word 16.0 Object Library e Microsoft Scripting Runtime dall'elenco, vedi screenshot:
4. Dopo aver selezionato le due opzioni, fai clic su OK per chiudere la finestra di dialogo, e poi continua premendo il tasto F5 per eseguire questo codice. Nella finestra Sfoglia che si apre, scegli una cartella che contiene i documenti Word su cui vuoi eseguire la ricerca e sostituzione, vedi screenshot:
5. Fai clic sul pulsante OK, nella finestra di dialogo che appare, premi il tasto Ctrl per selezionare separatamente le colonne del testo originale e del nuovo testo che desideri utilizzare, vedi screenshot:
6. Infine, fai clic su OK, e i testi originali verranno sostituiti con i nuovi in tutti questi file. Al termine, apparirà una finestra di dialogo come mostrato nello screenshot sottostante:
7. Fai clic su OK per chiudere la finestra di dialogo. Puoi andare nei file per verificare i risultati della conversione.
Trova e sostituisci più testi in più documenti Word con una funzionalità potente
In questa sezione, spiegherò come eseguire la ricerca e sostituzione di testo in batch in più documenti Word utilizzando Word stesso, anziché Excel. Utilizzando il potente Kutools for Word, puoi cercare efficacemente testi specifici e sostituirli con nuovi nel corpo principale, intestazioni, piè di pagina, commenti e altro, evidenziando i risultati secondo necessità.
Kutools per Word,dotato di intelligenza artificiale 🤖, offre oltre 100 funzionalità pratiche per semplificare i tuoi compiti.
1. Apri un file Word, quindi fai clic su Kutools Plus > Trova e sostituisci in batch, vedi screenshot:
2. Nella finestra di dialogo Trova e sostituisci in batch aperta, effettua le seguenti operazioni:
Fai clic sul pulsante Aggiungi per aggiungere i file Word in cui desideri trovare e sostituire i testi;
Nel riquadro sinistro, fai clic su Aggiungi riga dalla barra superiore;
Nel campo inserito, inserisci il testo originale e il nuovo testo separatamente nelle colonne Trova e Sostituisci che desideri trovare e sostituire. Inoltre, puoi specificare un colore per evidenziare i testi sostituiti secondo necessità.
3. Dopo aver creato i criteri di ricerca, fai clic sul pulsante Sostituisci per passare alla scheda Anteprima Risultati e visualizzare i risultati della ricerca e sostituzione. Vedi screenshot:
4. Quindi, fai clic sul pulsante Chiudi, e apparirà una finestra di dialogo per chiederti se desideri salvare questo scenario. Fai clic su Sì per salvarlo o su No per ignorarlo, vedi screenshot:
Consigli: Questa funzionalità può anche aiutare a eseguire le seguenti operazioni:
Trova e sostituisci caratteri speciali in più documenti Word;
Trova e sostituisci più stringhe con formattazione specifica in più documenti Word;
Trova e sostituisci più stringhe in più file txt/htm/html.
Fai di più in meno tempo con Kutools per Word potenziato dall'IA
Kutools per Word non è solo un insieme di strumenti, ma una soluzione intelligente progettata per aumentare la tua produttività. Con funzionalità guidate dall'intelligenza artificiale e le caratteristiche più essenziali, Kutools ti aiuta a ottenere di più in meno tempo:
Riassumi, riscrivi, componi e traduci contenuti istantaneamente.
Correggi il testo in tempo reale con suggerimenti su grammatica, punteggiatura e stile mentre scrivi.
Riformula e traduci il contenuto mantenendo intatti layout, stile e struttura.
Traduci i tuoi contenuti in oltre 40 lingue facilmente, espandendo la tua portata a livello globale.
Ottieni assistenza immediata e approfondimenti intelligenti basati sul contenuto del documento corrente.
Chiedi come completare un compito, come rimuovere le interruzioni di sezione, e l'IA ti guiderà o lo farà al posto tuo.
Oscura informazioni sensibili o riservate in pochi secondi per garantire la massima privacy.
Tutti gli strumenti funzionano perfettamente all'interno di Word, sempre a portata di mano.
Crea, perfeziona, traduci, riassumi e proteggi documenti senza sforzo.
Migliora grammatica, chiarezza e tono mentre scrivi in tempo reale.
Riformula e traduci il contenuto senza modificare layout o formattazione.
Chiedi come completare un compito, come rimuovere le interruzioni di sezione, e l'IA ti guiderà o lo farà al posto tuo.
Tutti gli strumenti funzionano perfettamente all'interno di Word, sempre a portata di mano.
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...