Перейти до основного матеріалу

Як шукати та замінювати кілька файлів у word?

Якщо у вас є кілька десятків файлів слів, що містять однаковий вміст (наприклад, верхній колонтитул, нижній колонтитул, деякі спеціальні слова чи цифри), і вам потрібно замінити однаковий вміст у цих документах у програмі Word. Як би вам було простіше швидко це зробити? Звичайно, ви можете відкрити ці файли по одному, щоб замінити один і той же вміст, але це буде трудомістко і клопітно. Цей підручник покаже вам хитрий спосіб заміни одного вмісту в декількох документах у Word одночасно.

Знайдіть і замініть тексти в декількох документах Word одночасно кодом VBA
Легко знаходьте та замінюйте різні тексти в кількох документах одночасно за допомогою Kutools для Word


Знайдіть і замініть тексти в декількох документах Word одночасно кодом VBA

1. прес інший + F11 відкрити Microsoft Visual Basic для додатків вікна.

2 В Microsoft Visual Basic для додатків вікна, натисніть InsertМодулі, а потім скопіюйте наступний код VBA у вікно Модуль.

Код VBA: пошук і заміна одного вмісту в кількох документах одночасно

Sub CommandButton1_Click()
'Updated by Extendoffice 20180625
Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
Dim xFindStr As String
Dim xReplaceStr As String
Dim xDoc As Document
On Error Resume Next
Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With xFileDialog
    .Filters.Clear
    .Filters.Add "All WORD File ", "*.docx", 1
    .AllowMultiSelect = True
    i = 1
    If .Show = -1 Then
        For Each stiSelectedItem In .SelectedItems
            GetStr(i) = stiSelectedItem
            i = i + 1
        Next
        i = i - 1
    End If
    Application.ScreenUpdating = False
    xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr)
    xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr)
    For j = 1 To i Step 1
        Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True)
        Windows(GetStr(j)).Activate
        Selection.Find.ClearFormatting
        Selection.Find.Replacement.ClearFormatting
        With Selection.Find
            .Text = xFindStr  'Find What
            .Replacement.Text = xReplaceStr  'Replace With
            .Forward = True
            .Wrap = wdFindAsk
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchByte = True
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
        Application.Run macroname:="NEWMACROS"
        ActiveDocument.Save
        ActiveWindow.Close
    Next
    Application.ScreenUpdating = True
End With
MsgBox "Operation end, please view", vbInformation
End Sub

3 Натисніть кнопку F5 клавіша для запуску коду.

4. На відкритті перегорнути вікно, будь-ласка, знайдіть і виберіть документи, які ви знайдете, і замініть текст всередині, а потім клацніть на OK кнопку. Дивіться знімок екрана:

5. У першій Kutools для Word діалогове вікно, введіть текст, який ви знайдете в документах, у Знайти те, що , а потім клацніть на OK кнопки.

6 У другому Kutools для Word діалогове вікно, введіть текст, яким ви заміните, і натисніть на OK кнопки.

8. Натисніть OK в наступному Microsoft Word діалогове вікно, щоб закінчити пошук і заміну.

У цьому випадку всі слова "Word" у вибраних документах одночасно замінюються на "Excel".


Легко знаходьте та замінюйте різні тексти в кількох документах одночасно за допомогою Kutools для Word

Тут настійно рекомендую Пакетний пошук та заміна особливість Kutools для Word. За допомогою цієї функції ви можете легко знаходити та замінювати різні тексти в кількох документах Word одночасно. Давайте подивимося, як застосувати цю функцію для пошуку та заміни текстів у документах.

Kutools для Word : з більш ніж 100 зручними надбудовами Word, безкоштовно спробувати без обмежень 60 днів.

1. Клацніть, будь ласка Kutools Plus > Пакетний пошук та заміна щоб увімкнути цю функцію.

2 В Пакетний пошук та заміна діалогове вікно, будь ласка, налаштуйте наступним чином.

  • 2.1) Клацніть на Додати рядок кнопка під кнопкою Знайти і замінити вкладка;
  • 2.2) У створених полях рядків:
A. Введіть текст, який ви знайдете, у текстовому полі в полі знайти колонка
B. Введіть текст, яким ви заміните, у текстове поле в полі заміщати стовпчик;
C. Вкажіть тип пошуку, де знайти текст і колір, щоб виділити текст, як вам потрібно. У цьому випадку я вибираю Повна відповідність слова, Основний документ і певний колір від Тип пошуку, Знайти в та Виділіть стовпчики;
  • 2.3) Повторіть кроки 2.1 та 2.2, щоб додати більше текстів, які ви знайдете та заміните;
  • 2.4) Клацніть на  кнопка в Тип файлу розділ, щоб додати документи Word, в яких ви знайдете та заміните тексти;
  • 2.5) Клацніть на заміщати or знайти кнопку. Дивіться знімок екрана:

примітки:
1. Якщо натиснути знайти , всі результати пошуку будуть відображатися під Результат попереднього перегляду вкладку. Після попереднього перегляду результатів, якщо ви хочете замінити всі тексти, натисніть кнопку Знайти і замінити вкладку. В іншому випадку закрийте діалогове вікно.

2. Якщо натиснути заміщати кнопку, усі зазначені тексти будуть негайно замінені новими, а результати також відображатимуться під Результат попереднього перегляду Вкладка.

3. Якщо ви вказали кольори виділення на кроці 2, усі замінені тексти будуть виділені зазначеними кольорами, і ви зможете легко їх знайти в документах з одного погляду

3. Закрийте Пакетний пошук та заміна діалогове вікно

Щоб отримати додаткову інформацію про цю функцію, будь ласка натисніть тут....

Якщо ви хочете отримати безкоштовну пробну версію цієї утиліти, перейдіть на безкоштовно завантажити програмне забезпечення - спочатку, а потім перейдіть до застосування операції, як описано вище.

Найкращі інструменти продуктивності офісу

Kutools для Word - Підніміть свій досвід Word із Over 100 Чудові особливості!

🤖 Kutools AI Assistant: змініть свій текст за допомогою ШІ - Створення вмісту  /  Переписати текст  /  Узагальнити документи  /  Звертайтеся за інформацією на основі Документа, все в Word

📘 Майстерність документів: Розділити сторінки  /  Об’єднати документи  /  Експортувати вибране в різні формати (PDF/TXT/DOC/HTML...)  /  Пакетне перетворення в PDF  /  Експортувати сторінки як зображення  /  Друк кількох файлів одночасно...

Редагування змісту: Пакетний пошук та заміна між кількома файлами  /  Змінити розмір усіх зображень  /  Транспонування рядків і стовпців таблиці  /  Перетворити таблицю в текст...

🧹 Очищення без зусиль: Змітати Зайві простори  /  Розбиття розділів  /  Усі заголовки  /  Текстові поля  /  Гіперпосилання  / Щоб отримати більше інструментів для видалення, відвідайте наш сайт Вилучити групу...

Творчі вставки: Вставити Роздільники тисяч  /  Прапорці  /  радіо кнопки  /  QR-код  /  Штрих-код  /  Таблиця діагональних ліній  /  Заголовок рівняння  /  Підпис зображення  /  Заголовок таблиці  /  Кілька зображень  / Дізнайтеся більше в Вставити групу...

???? Точність вибору: Точне визначення конкретні сторінки  /  Таблиці  /  форми  /  заголовок абзаців  / Покращте навігацію за допомогою більше Виберіть функції...

Покращення зірок: Швидка навігація до будь-якого місця  /  автоматичне вставлення повторюваного тексту  /  плавно перемикатися між вікнами документів  /  11 Інструменти перетворення...

👉 Хочете спробувати ці функції? Kutools для Word пропонує a 60-денна безкоштовна пробна версія, без обмежень! ????
 
Comments (71)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Congrats!!! Your VBA code saves a lot of time. 5*
Rated 5 out of 5
This comment was minimized by the moderator on the site
thanks for -How To Search And Replace Across Multiple Files In Word?

what about from out side (by folder) ?

thanks gain
This comment was minimized by the moderator on the site
This is a great explanation.  Is there a way to change settings, e.g. page size, simultaneously? 
This comment was minimized by the moderator on the site
After pressing F5, I get the following error" "Compile error: User-defined type not defined." Can someone help?
This comment was minimized by the moderator on the site
Hi Monique,Please check if the Microsoft Office Object Library is enabled as shown in the screenshot below.
This comment was minimized by the moderator on the site
This is SUCH a time saving solution. THANK YOU!
One thing that may make it even better, is adding support for subdirectories. (That is: Files in multiple subdirectories)
I am an absolute newbie in this, and don't know the syntax, the parameter, or where to add that.

Could somebody help?
This comment was minimized by the moderator on the site
I need to replace text in multiple Word files and have the replaced text highlighted. Is there a way to do this?
This comment was minimized by the moderator on the site
Hi Daphne,
Why not try the Batch Find and Replace feature of Kutools for Word? It can solve this issue with ease.
This comment was minimized by the moderator on the site
this was a lifesaver thank you so much
This comment was minimized by the moderator on the site
Is it possible to replace in the headers of the word doc?
This comment was minimized by the moderator on the site
Hi Tiago,
Please apply the below VBA code to include the content of headers and footers when finding and replacing texts in multiple documents at once.

Sub CommandButton1_Click()
'Updated by Extendoffice 20180625
Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
Dim xFindStr As String
Dim xReplaceStr As String
Dim xDoc As Document
On Error Resume Next
Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With xFileDialog
.Filters.Clear
.Filters.Add "All WORD File ", "*.docx", 1
.AllowMultiSelect = True
i = 1
If .Show = -1 Then
For Each stiSelectedItem In .SelectedItems
GetStr(i) = stiSelectedItem
i = i + 1
Next
i = i - 1
End If
Application.ScreenUpdating = False
xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr)
xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr)
For j = 1 To i Step 1
Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True)
Windows(GetStr(j)).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = xFindStr 'Find What
.Replacement.Text = xReplaceStr 'Replace With
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
If MsgBox("Do you want to replace texts in headers and footers too? ", vbYesNo, "Kutools for Word") = vbYes Then
ActiveWindow.View.SplitSpecial = wdPanePrimaryFooter
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
ActiveWindow.View.SplitSpecial = wdPanePrimaryHeader
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
End If
ActiveDocument.Save
ActiveWindow.Close
Next
Application.ScreenUpdating = True
End With
MsgBox "Operation end, please view", vbInformation
End Sub
This comment was minimized by the moderator on the site
Is that possible to replace in the header of the word doc?
This comment was minimized by the moderator on the site
Thanks for sharing this information with us.
Word search and replace tool
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations