如何在文檔文件中批量“查找-替換”?

如何在文檔文件中批量“查找-替換”?

我有多個具有以下結構的 .doc 檔案:

[useless text #1]
[useful text]
[useless text #2]

無用文字區塊在文件中是相同的。

如何批量刪除這些無用的區塊而不損壞有用文字中的格式、圖片和超連結?

答案1

您可以嘗試從手動刪除操作中記錄 VBA 巨集,然後在需要處理的每個文件中(手動)執行該巨集。你知道如何在Word中錄製VBA巨集嗎?如果文字區塊總是以相同的文字開始和結束,那麼這應該相對容易,並為您節省一些或大部分工作。

答案2

步驟1:按下「Alt-F11」開啟 Microsoft Visual Basic for Application 視窗。

第2步:按一下“插入”標籤上的“模組”,將以下 VBA 程式碼複製並貼上到“模組”視窗中。

步驟3:然後點擊跑步(F5) 按鈕套用 VBA。

VBA:同時在多個文件中搜尋和取代相同內容

Sub CommandButton1_Click()
Dim MyDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
On Error Resume Next
Set MyDialog = Application.FileDialog(msoFileDialogFilePicker) 
With MyDialog 
.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
For j = 1 To i Step 1
Set Doc = Documents.Open(FileName:=GetStr(j), Visible:=True)
Windows(GetStr(j)).Activate
Selection.Find.ClearFormatting 
Selection.Find.Replacement.ClearFormatting
With Selection.Find 
.Text = "search" 'Find What 
.Replacement.Text = "find" '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

筆記:可以更改Text =“search”、Replacement.Text =“find”來指定要搜尋的內容和要申請替換的內容。

.Text = "search" 'Find What 
.Replacement.Text = "find" 'Replace With 

信用:extendoffice

答案3

當我從事土木工程工作時,我一直遇到這個問題,需要一次對大量專​​案文件進行多次更改 - 像這樣(或類似)的程序為我解決了這個問題;

https://www.etsy.com/listing/1468077519/smart-replace-pro-automated-find-replace

我的打開了目錄中的所有 MS Word 和 Excel 文件,並一次性批量查找/替換許多變數 - 這個看起來也可以做 Powerpoint。

答案4

有線上工具https://batch-edit.com對於這個用例來說,它是免費使用的。您可以建立正規表示式,並用空白文字同時取代所有文件檔案中的符合文字。

完整免責聲明:我是該工具的作者。

相關內容