Wie finde und ersetze ich Text in einem Word-Dokument aus Excel?
In Word-Dokumenten können wir die Funktion Suchen und Ersetzen anwenden, um einen Text schnell zu finden und zu ersetzen. Wenn jedoch mehrere Texte gesucht und ersetzt werden müssen, ist es zeitaufwändig, die Texte einzeln in die Funktion „Suchen und Ersetzen“ einzugeben. In diesem Fall können Sie die Texte zum Suchen und Ersetzen in die Liste der Zellen eingeben und diese Aufgabe mit Hilfe von VBA-Code in Excel problemlos erledigen. In diesem Artikel werde ich auch eine nützliche Funktion zum Stapelsuchen und Ersetzen von Texten in mehreren Word-Dokumenten vorstellen.
Suchen und ersetzen Sie mehrere Texte in einem Word-Dokument aus Excel mit VBA-Code
Suchen und ersetzen Sie mehrere Texte in mehreren Word-Dokumenten aus Excel mit VBA-Code
Suchen und ersetzen Sie mehrere Texte in einem Word-Dokument aus Excel mit VBA-Code
Wenn Sie einige Texte in nur einer Word-Datei suchen und ersetzen möchten, kann Ihnen der folgende VBA-Code einen Gefallen tun.
1. Erstellen Sie im Excel-Arbeitsblatt eine Spalte mit den Texten, die Sie suchen und ersetzen möchten, und eine weitere Spalte mit Texten, die Sie ersetzen möchten, wie im folgenden Screenshot gezeigt. Und dann drücken Alt + F11 Tasten gleichzeitig zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.
2. Dann klick Insert > Modul, kopieren Sie den folgenden VBA-Code und fügen Sie ihn in das Fenster ein.
VBA-Code: Finden und ersetzen Sie mehrere Texte in einer Word-Datei
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. Nach dem Einfügen des Codes immer noch in der Microsoft Visual Basic für Applikationen Klicken Sie im Fenster Tools > Bibliographie, siehe Screenshot:
4. In der herausgesprungenen Referenzen - VBAProject Wählen Sie im Dialogfeld Microsoft Word 16.0-Objektbibliothek aus dem Listenfeld, siehe Screenshot:
5. Klicken Sie OK Schaltfläche, um das Dialogfeld zu schließen, und drücken Sie jetzt F5 Taste, um diesen Code auszuführen, wählen Sie im Popup-Fenster „Durchsuchen“ die Word-Datei aus, in der Sie die Texte ersetzen möchten, siehe Screenshot:
6. Dann klick OK, drücken Sie im folgenden Dialogfeld Ctrl Taste, um den Originaltext und neue Textzellen, die Sie verwenden möchten, separat auszuwählen, siehe Screenshot:
7. Und dann klicken OK klicken, jetzt werden die Texte gefunden und durch die neuen Texte in Ihrem angegebenen Dokument ersetzt, und die Datei wird ebenfalls geöffnet. Sie sollten sie speichern, um die Änderungen beizubehalten.
Suchen und ersetzen Sie mehrere Texte in mehreren Word-Dokumenten aus Excel mit VBA-Code
Hier erstelle ich auch einen VBA-Code zum Suchen und Ersetzen mehrerer Texte in mehreren Word-Dokumenten, bitte gehen Sie wie folgt vor:
1. Öffnen Sie die Excel-Datei, die zwei Spalten mit zu ersetzenden und zu ersetzenden Werten enthält, wie im folgenden Screenshot gezeigt, und drücken Sie dann Alt + F11 Tasten gleichzeitig zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.
2. Dann klick Insert > Modul, kopieren Sie den folgenden VBA-Code und fügen Sie ihn in das Fenster ein.
VBA-Code: Finden und ersetzen Sie mehrere Texte in mehreren Word-Dateien
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. Immer noch in der Microsoft Visual Basic für Applikationen Klicken Sie im Fenster Tools > BibliographieIn der Referenzen - VBAProject Wählen Sie im Dialogfeld Microsoft Word 16.0-Objektbibliothek und Microsoft Scripting-Laufzeit Optionen aus dem Listenfeld, siehe Screenshot:
4. Nachdem Sie die beiden Optionen überprüft haben, klicken Sie auf OK , um das Dialogfeld zu schließen, und drücken Sie dann weiter auf F5 Schlüssel zum Ausführen dieses Codes in der Öffnung Entdecken Wählen Sie im Fenster einen Ordner aus, der die Word-Dokumente enthält, die Sie suchen und ersetzen möchten, siehe Screenshot:
5. Klicken Sie OK Schaltfläche, drücken Sie im Popup-Dialogfeld Ctrl Taste, um den Originaltext und neue Textspalten separat auszuwählen, die Sie verwenden möchten, siehe Screenshot:
6. Abschließend klicken Sie auf OK, und die ursprünglichen Texte werden in diesen Dateien durch die neuen ersetzt. Nach dem Abschluss wird ein Dialogfeld angezeigt, wie im folgenden Screenshot gezeigt:
7. Klicken Sie OK um den Dialog zu schließen. Und Sie können zu den Dateien gehen, um die konvertierten Ergebnisse zu überprüfen.
Suchen und ersetzen Sie mehrere Texte in mehreren Word-Dokumenten mit einer leistungsstarken Funktion
In diesem Abschnitt werde ich darüber sprechen, wie Sie Texte in mehreren Word-Dokumenten stapelweise aus Word anstelle von Excel finden und ersetzen. Mit einem mächtigen Werkzeug-Kutools for Word, können Sie die spezifischen Texte schnell finden und ersetzen und durch neue Texte in Hauptdatei, Kopfzeile, Fußzeile, Kommentaren usw. ersetzen und die Ergebnisse nach Bedarf hervorheben.
1. Öffnen Sie eine Word-Datei und klicken Sie dann auf Kutoolen Plus > Batch suchen und ersetzen, siehe Screenshot:
2. In der geöffneten Batch suchen und ersetzen Im Dialogfeld führen Sie bitte die folgenden Vorgänge aus:
- Klicken Sie auf Kostenlos erhalten und dann auf Installieren. Speichern Schaltfläche zum Hinzufügen der Word-Dateien, in denen Sie Texte suchen und ersetzen möchten;
- Klicken Sie im linken Bereich auf Zeile hinzufügen vom oberen Band;
- Geben Sie im eingefügten Feld den ursprünglichen Text und den neuen Text ein Finden Sie und Ersetzen Spalten getrennt, die Sie suchen und ersetzen möchten. Außerdem können Sie nach Bedarf eine Farbe zum Hervorheben der ersetzten Texte angeben.
3. Nachdem Sie die Suchkriterien erstellt haben, klicken Sie auf Ersetzen Taste, um die gehen Ergebnisvorschau Registerkarte, um die Ergebnisse des Suchens und Ersetzens anzuzeigen. Siehe Screenshot:
4. Dann klick Menu Schaltfläche und ein Eingabeaufforderungsfeld erscheint, um Sie daran zu erinnern, ob Sie dieses Szenario speichern möchten, klicken Sie auf Ja um es zu speichern, und klicken Sie auf Nein Um es zu ignorieren, siehe Screenshot:
- Suchen und Ersetzen von Sonderzeichen in mehreren Word-Dokumenten;
- Finden und ersetzen Sie mehrere Zeichenfolgen mit bestimmten Formatierungen in mehreren Word-Dokumenten;
- Finden und ersetzen Sie mehrere Zeichenfolgen in mehreren txt/htm/html-Dateien.
Klicken Sie hier, um weitere Informationen zu dieser Funktion zu erhalten…
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!