批量处理word内容的工具 word文档批量处理大师怎么用

在日常办公中,我们经常需要处理大量的WORD文档,很多情况下这些文档需要处理的操作是相同的,比如批量进行页面格式设置,批量替换某些文字等等,如果能够实现对这些文档的批量处理效率岂不高多了!
下面教大家怎么实现 , 整个过程用到了Word的VBA编程,但是你根本不需要懂一句代码,通过四步就可以搞定 。
第一步:打开一个要处理的Word文档
第二步:调出Word开发工具选项卡

批量处理word内容的工具 word文档批量处理大师怎么用

文章插图

批量处理word内容的工具 word文档批量处理大师怎么用

文章插图
第三步:录制操作过程
勾选后确定,会发现Word多了一个开发工具选项卡,点击该选项卡,点录制宏按钮 。Word会记录你的每一步操作 。比如简单输入几个字ABCDEF
批量处理word内容的工具 word文档批量处理大师怎么用

文章插图

批量处理word内容的工具 word文档批量处理大师怎么用

文章插图
对Word操作完成后,点停止录制 。然后再点 Visual Basic 按钮,会出现下面的界面:
批量处理word内容的工具 word文档批量处理大师怎么用

文章插图
上面的宏1就是刚才录制的代码,将光标放到代码区域,也就是 第一行到第五行的区域范围,然后点运行按钮 , 你会发现Word中多了一个ABCDEF , 是不是很神奇?
第四步:实现批量处理
通过上面的方法我们把处理一个文档的方法记录了下来,如何批量处理多个文档呢,也很简单 。把下面的代码复制到刚才录制的代码前面,设置第4行和第5行的内容,就大功告成了 。
测试:将光标放到 开始批处理代码块中,按执行按钮,程序会自动打开指定文件夹下的每一个Word文档(包括子文件夹文档),并在每一个文件头插入ABCDEF六个字母,然后自动关闭Word文档 。所有文档处理完毕后会弹出一个”批量处理完毕!“ 的对话框 。
录制不同的宏,可以进行各种各样的批量处理,怎么样,是不是感觉功能太强大了?所有这些我们不用写一行代码就可以实现 , 当然你有一定的编程基础的话,还可以修改录制的宏或者编写更加复杂的宏功能 。我们也会不定期发布一些常用的宏功能 , 供大家调用 。所以请大家关注我们的头条号,及时获取最新资料 。
说明:Word的录制宏的功能,不能录制所有操作,尤其一些鼠标操作录制效果不好 , 如果想在这方面深入体会的话可以下载安装Office 2003 ,录制的效果是所有office版本中最好的 。
Private myFun As String
Sub 开始批量处理() ‘
dim myDir as string
myFun = “宏1” ‘修改成录制的宏名称
myDir= “D:\我的文件夹\” ‘修改成要处理的Word文档所在的文件夹
SearchFiles myDir, “*.doc ‘批量处理doc格式文档
SearchFiles Mydir, “*.docx” ‘批量处理docx格式文档
MsgBox “批量处理完毕!”, vbInformation + vbApplicationModal
End Sub
‘功能:这个函数可以遍历指定一个目录下的所有文件,包括子目录.也可以指定文件类型遍历 。
‘用法:SearchFiles “C:\Program Files\WinRAR\”, “*” ‘查找所有文件
Function SearchFiles(Path As String, FileType As String)
Dim Files() As String ‘文件路径
Dim Folder() As String ‘文件夹路径
Dim a, b, c As Long
Dim sPath As String
If Right$(Path, 1) <> “\” Then Path = Path & “\”
sPath = Dir(Path & FileType) ‘查找第一个文件
Do While Len(sPath) ‘循环到没有文件为止
a = a + 1
【批量处理word内容的工具 word文档批量处理大师怎么用】ReDim Preserve Files(1 To a)
Files(a) = Path & sPath ‘将文件目录和文件名组合,并存放到数组中
Documents.Open Files(a)’打开文件
Application.Run myFun’执行自定义函数
ActiveDocument.Close‘关闭文件
sPath = Dir ‘查找下一个文件
DoEvents ‘让出控制权
Loop
sPath = Dir(Path & “\”, vbDirectory) ‘查找第一个文件夹
Do While Len(sPath) ‘循环到没有文件夹为止
If Left$(sPath, 1) <> “.” Then ‘为了防止重复查找
If GetAttr(Path & “\” & sPath) And vbDirectory Then ‘如果是文件夹则 。。。。。。
b = b + 1
ReDim Preserve Folder(1 To b)
Folder(b) = Path & sPath & “\” ‘将目录和文件夹名称组合形成新的目录,并存放到数组中
End If
End If
sPath = Dir ‘查找下一个文件夹
DoEvents ‘让出控制权
Loop
For c = 1 To b ‘使用递归方法,遍历所有目录
SearchFiles Folder(c), FileType
Next
End Function


    以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

    「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: