如何打印某个目录中的所有WORD文档,并且,打印的是指定的页,想打印哪页就打印哪页?这得使用VBA来完成。
一、理论依据
通过依靠在EXCEL中使用VBA代码,来指定要打印的某个目录的所有WORD文档,想打印哪几页就打印哪页。
二、实现方法
在EXCEL中,添加一个按钮,然后再给该按钮添加功能代码即可。
代码如下
三、使用方法
上述功能代码准备好了以后,在EXCEL界面中,如下图。
点击上图的“打印”按钮,然后弹出选择目录的界面,只要选择好存放WORD文档的目录后,就会批量打印了。
知识拓展:下面附上相关的功能代码。
Sub Print1()
Dim mypath, myfile, wApp
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = False Then Exit Sub
mypath = .SelectedItems(1) & "\"
End With
myfile = Dir(mypath & "*.doc*")
On Error GoTo ERROR1
Do While myfile <> ""
Set wApp = CreateObject("word.application")
With wApp
.documents.Open mypath & myfile
'.activedocument.PrintOut '打印当前文档所有页
'.ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="2", To:="2" '打印当前文档从第几页到第几页
.ActiveDocument.PrintOut Range:=wdPrintRangeOfPages, Pages:="1,3" '打印当前文档指定页,比如:Pages:="1-3",Pages:="2-3",Pages:="1,2-3"
.Quit
End With
Set wApp = Nothing
myfile = Dir
Loop
Exit Sub '如果没有这个退出过程语句,会一直执行下去,该句适合放在ERROR1:前
ERROR1:
wApp.Application.Quit
End Sub
请注意,当你使用上述代码的时候,会弹出错误提示,请使用这个方法来解决,否则不能正常使用。http://www.dzwebs.net/5457.html