朋友接到其领导交付的一个体力活:要把好多个位于不同目录下面的 Word 文档里的敏感字眼替换掉,如“美国”换成“某国” …
对付文本文件的替换可以用 UltraEdit 来完成,暂时没找到有 Word 方面的工具,动手写了一个,简单实用,主要代码如下。
Sub ReplaceDir(dir As String)'--替换目录
Dim fso As New FileSystemObject, fo as Folder, fo1 as Folder, f as File
![]()
Set fo = fso.GetFolder(dir) '--初始目录
For Each f In fo.Files
If UCase(Right(f.Name, 4)) = ".DOC" And Left(f.Name, 1) <> "~" Then
ReplaceFile (f.Path)
End If
Next
![]()
For Each fo1 In fo.SubFolders
ReplaceDir (fo1.Path)
Next
End Sub
![]()
'--替换文件
Sub ReplaceFile(fileName As String)
Dim doc As Object
![]()
On Error Resume Next
Set doc = GetObject(fileName)
doc.Visible = False
For i = 0 To UBound(aText)
doc.ActiveWindow.Selection.Find.Execute "要替换的词", False, False, False, False, False, &_
True, 1, False, "被替换的词", 2, False, True, False, False'稍微修改一下,可以实现多个词语的替换Next
doc.Save
doc.Close
Set doc = Nothing
End Sub
能不能把EXE文件发给我!
有急用…
谢谢!
[email protected]
我也要的,我想学习
[email protected]
正好需要,受用,谢谢了
我也想要,有急用啊,谢谢![email protected]
能否把word文档属性(例如摘要信息)里的内容也查找替换掉?
请问如何实现转换多个不同的词汇啊