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

Jak najít a nahradit text v dokumentu Word z Excelu?

V dokumentu aplikace Word můžeme použít funkci Najít a nahradit, abychom rychle našli a nahradili jeden text. Pokud je však potřeba najít a nahradit více textů, zadávat text jeden po druhém do funkce Najít a nahradit bude časově náročné. V tomto případě můžete zadat vyhledání a nahrazení textů do seznamu buněk a pomocí kódu VBA v Excelu tuto práci snadno provést. V tomto článku také představím užitečnou funkci pro hromadné vyhledávání a nahrazování textů ve více dokumentech aplikace Word.

Najděte a nahraďte více textů v jednom dokumentu aplikace Word z Excelu kódem VBA

Najděte a nahraďte více textů ve více dokumentech aplikace Word z Excelu kódem VBA

Najděte a nahraďte více textů ve více dokumentech aplikace Word pomocí výkonné funkce


Najděte a nahraďte více textů v jednom dokumentu aplikace Word z Excelu kódem VBA

Pokud chcete najít a nahradit některé texty pouze v jednom souboru aplikace Word, může vám pomoci následující kód VBA.

1. V listu aplikace Excel vytvořte sloupec obsahující texty, které chcete najít a nahradit, a další sloupec s texty, které chcete nahradit, jak je znázorněno na obrázku níže. A pak stiskněte Alt + F11 současně otevřete Microsoft Visual Basic pro aplikace okno.

2. Potom klepněte na tlačítko Vložit > Modul, zkopírujte a vložte níže uvedený kód VBA do okna.

Kód VBA: Najděte a nahraďte více textů v jednom souboru aplikace 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. Po vložení kódu stále v Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Tools > Reference, viz screenshot:

4. Ve vyskakovacím okně Reference - VBAProject dialogové okno vyberte Knihovna objektů Microsoft Word 16.0 ze seznamu, viz snímek obrazovky:

5, klikněte OK zavřete dialogové okno a nyní stiskněte F5 klíč ke spuštění tohoto kódu, ve vyskakovacím okně Procházet vyberte soubor Word, ve kterém chcete nahradit texty, viz snímek obrazovky:

6. Potom klepněte na tlačítko OK, v následujícím dialogovém okně stiskněte Ctrl tlačítko pro výběr původního textu a nových textových buněk samostatně, které chcete použít, viz snímek obrazovky:

7. A pak klikněte OK Nyní jsou texty nalezeny a nahrazeny novými texty ve vašem zadaném dokumentu a soubor se také otevírá, měli byste jej uložit, abyste zachovali změny.


Najděte a nahraďte více textů ve více dokumentech aplikace Word z Excelu kódem VBA

Zde také vytvořím kód VBA pro vyhledání a nahrazení více textů ve více dokumentech aplikace Word, postupujte takto:

1. Otevřete soubor Excel, který obsahuje dva sloupce hodnot, které chcete nahradit a nahradit, jak je znázorněno na níže uvedeném snímku obrazovky, a stiskněte Alt + F11 současně otevřete Microsoft Visual Basic pro aplikace okno.

2. Potom klepněte na tlačítko Vložit > Modul, zkopírujte a vložte níže uvedený kód VBA do okna.

Kód VBA: Najděte a nahraďte více textů ve více souborech aplikace 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. Stále v Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Tools > Reference, V roce Reference - VBAProject dialogové okno vyberte Knihovna objektů Microsoft Word 16.0 a Microsoft Scripting Runtime možnosti ze seznamu, viz snímek obrazovky:

4. Po zaškrtnutí dvou možností klikněte na OK zavřete dialogové okno a poté pokračujte stisknutím tlačítka F5 klíč k provedení tohoto kódu v otevření Procházet vyberte složku obsahující dokumenty aplikace Word, které chcete vyhledat a nahradit, viz snímek obrazovky:

5, klikněte OK ve vyskakovacím dialogovém okně stiskněte Ctrl klíč pro výběr původního textu a nových textových sloupců samostatně, které chcete použít, viz snímek obrazovky:

6. Nakonec klepněte na tlačítko OKa původní texty jsou v těchto souborech nahrazeny novými, po dokončení se objeví dialogové okno, jak je uvedeno na obrázku níže:

7, klikněte OK pro uzavření dialogu. A můžete přejít do souborů a zkontrolovat převedené výsledky.


Najděte a nahraďte více textů ve více dokumentech aplikace Word pomocí výkonné funkce

V této části budu hovořit o tom, jak dávkově vyhledat a nahradit texty ve více dokumentech aplikace Word z aplikace Word namísto aplikace Excel. S výkonným nástrojem -Kutools pro Word, můžete rychle najít a nahradit konkrétní texty a nahradit je novými texty v hlavním souboru, záhlaví, zápatí, komentářích atd. a zvýraznit výsledky, jak potřebujete.

1. Otevřete jeden soubor aplikace Word a potom klepněte na tlačítko Kutools Plus > Dávkové hledání a nahrazení, viz screenshot:

2. V otevřeném Dávkové hledání a nahrazení V dialogovém okně proveďte následující operace:

  • klikněte přidat tlačítko pro přidání souborů aplikace Word, kde chcete najít a nahradit texty;
  • V levém podokně klikněte na Přidat řádek z horní stuhy;
  • Do vloženého pole zadejte původní text a nový text do Najít a Nahradit sloupce samostatně, které chcete najít a nahradit. Můžete také určit barvu pro zvýraznění nahrazených textů, jak potřebujete.

3. Po vytvoření vyhledávacích kritérií klikněte Nahradit pro přechod na Výsledek náhledu zobrazíte výsledky hledání a nahrazení. Viz snímek obrazovky:

4. Potom klepněte na tlačítko zavřít a zobrazí se okno s výzvou, které vám připomene, zda chcete tento scénář uložit, klepněte na Ano uložte jej a klikněte na Ne ignorovat, viz screenshot:

Tipy: Tato funkce také může pomoci při provádění následujících operací:
  • Najít a nahradit speciální znaky ve více dokumentech aplikace Word;
  • Najít a nahradit více řetězců specifickým formátováním ve více dokumentech aplikace Word;
  • Najděte a nahraďte více řetězců ve více souborech txt/htm/html.

Kliknutím získáte podrobnější informace o této funkci…


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel řeší většinu vašich problémů a zvyšuje vaši produktivitu o 80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než 300 výkonných funkcí. Podporuje Office / Excel 2007-2021 a 365. Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Plné funkce 30denní bezplatná zkušební verze. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
officetab dno
Komentáře (1)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Zdravím,
the first code :
Kód VBA: Najděte a nahraďte více textů v jednom souboru aplikace Word

thows error : compile error user defined type not defined
https://i.imgur.com/FZPBy4I.png
Zatím zde nejsou žádné komentáře
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL