随着时间的流逝,很有可能收集大量文档。在某些时候,您可能希望对集合中的每个文档进行相同的更改。例如,您可能需要在每个文档中更改公司名称。显然,您可以打开每个文档,进行更改,然后保存文档,但是如果您要处理数百或数千个文档,则该过程可能会变得很累人。

该怎么办?与在其他一些WordTips中所指出的观点一致,只要您需要完成一些平凡而繁琐的工作,就可以经常使用宏为您处理工作。例如,您可以编写一个宏,该宏将逐步遍历目录中的所有文档,依次加载每个文档,搜索并更改必要的文本,然后重新保存文档。此过程与您手动执行的过程没有什么不同,只不过它是在宏的控制下完成的。这使得它变得更加容易和快捷。

下面是可以完成此操作的宏的示例:

Public Sub MassReplace()

With Application.FileSearch         .LookIn = "C:\"             ' where to search         .SearchSubFolders = True    ' search the subfolders         .FileName = "*.doc"         ' file pattern to match

' if more than one match, execute the following code         If .Execute() > 0 Then             ' to display how many files this macro will access,             ' uncomment the next line of code '            MsgBox "Found " & .FoundFiles.Count & " file(s)."



' for each file you find, run this loop             For i = 1 To .FoundFiles.Count                 ' open the file based on its index position                 Documents.Open FileName:=.FoundFiles(i)



' search and replace the company name                 selection.Find.ClearFormatting                 selection.Find.Replacement.ClearFormatting                 With selection.Find                     .Text = "OldCompanyName"

.MatchCase = True                     .Replacement.Text = "NewCompanyName"

End With                 selection.Find.Execute Replace:=wdReplaceAll

' replace street address                 With selection.Find                     .Text = "OldStreetAddress"

.Replacement.Text = "NewStreetAddress"

End With                 selection.Find.Execute Replace:=wdReplaceAll

' replace the City, State, and Zip code                 With selection.Find                     .Text = "OldCityStateAndZip"

.Replacement.Text = "NewCityStateAndZip"

End With                 selection.Find.Execute Replace:=wdReplaceAll

' save and close the current document                 ActiveDocument.Close wdSaveChanges             Next i         Else             ' if the system cannot find any files             ' with the .doc extension             MsgBox "No files found."

End If     End With End Sub

这个宏非常强大,它不仅可以更改公司名称,还可以更改公司地址。您所需要做的就是进行更改,以指定要在搜索中使用的目录和驱动器,以及新旧公司信息是什么。

如果处理宏超出您要解决的范围,则还有许多可用于Word文档的不同商业产品。各种订户建议了以下程序:

  • WordFisher(http://www.wordfisher.com/wf4.htm)

  • 单词搜索和替换(http://www.funduc.com/word_sr.htm)

  • InfoRapid搜索和替换(http://www.inforapid.com/html/searchreplace.htm)

  • MegaReplacer(http://www.editorium.com/14843.htm)

_WordTips_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)此技巧(1462)适用于Microsoft Word 97、2000、2002和2003。您可以找到Word(Ribbon 2007)的功能区界面的该技巧版本。和更高版本)在这里: