标题: [问题求助] VBS新手求思路,修改完善批量打印WORD文档 [打印本页]
作者: fonyin 时间: 2022-11-16 10:19 标题: VBS新手求思路,修改完善批量打印WORD文档
结合实际工作需要,搜索了论坛和网上的批量打印文件,就是一次只能指定一种类型,不能换类型,我的代码如下:- Sub 批量打印WORD文档()
-
- Dim fileToOpen, GetOpenFilename, App, iFile
-
- fileToOpen = Application.GetOpenFilename(filefilter:="Word文档类型(*.do*),*.do*", FilterIndex:=4, Title:="请选择要处理的文档(可多选)", MultiSelect:=True)
-
- If Not IsArray(fileToOpen) Then
-
- MsgBox "你没有选择文件", vbOKOnly, "提示": Exit Sub
-
- Else: Set App = CreateObject("Word.Application")
-
- For Each iFile In fileToOpen
-
- Set WrdDoc = App.Documents.Open(iFile)
-
- App.Documents(WrdDoc).PrintOut
-
- App.Documents(WrdDoc).Close False
-
- T = T + 1
-
- Next
-
- End If
-
- MsgBox "操作完成!!" & vbCrLf & "打印了 " & T & " 个文件。", vbOKOnly, "提示"
-
- End Sub
复制代码
我"Word文档类型(*.do*),*.do*"换成, "表格文件类型(*.xl*),*.xl*",类似txt都可以改用
参照网上写法 AllFiles|*.*|(*.exe)|*.exe|(*.TXT)|*.TXT|(*.doc)|*.doc| 也出错
请前辈指导。
类似这个图片的下拉文件类型
作者: pd1 时间: 2022-11-16 14:46
直接改成"Word文档类型(*.*),*.*"
不行吗
作者: fonyin 时间: 2022-11-16 17:36
回复 2# pd1
我上面代码单独一种没问题,但是要实现如图片中的文件类型下拉选择就不知道如何实现。 具体看图片右下角那里
作者: fonyin 时间: 2022-11-16 17:40
就是我目前能单独实现批量打印word、或者批量打印excel、或者批量打印txt;
而我想像上图片右下角那样,比如我这个批量工具是要实现批量打印多个word和多个excel,那么我可以Allfiles,要其他文件类型时可以单独选择,而不是只能单独word,或者excel
作者: czjt1234 时间: 2022-11-16 17:47
【我"Word文档类型(*.do*),*.do*"换成, "表格文件类型(*.xl*),*.xl*",类似txt都可以改用】
既然你会改,那么把这个vbs命名为PrintWord.vbs
再创建一个PrintText.vbs
一个PrintExcel.vbs
不就好了
作者: zaqmlp 时间: 2022-11-16 18:17
- fileToOpen = Application.GetOpenFilename(filefilter:="所有文件(*.*), *.*, word文档(*.doc;*.docx), *.doc;*.docx, excel文档(*.xls*), *.xls*, 文本文档(*.txt), *.txt", FilterIndex:=1, Title:="请选择要处理的文档(可多选)", MultiSelect:=True)
复制代码
作者: fonyin 时间: 2022-11-17 16:31
回复 5# czjt1234
+PDF呢?+PPT呢? 本来用这个就是为了提高效率的,结果还弄那么多出来了
作者: fonyin 时间: 2022-11-17 16:32
回复 6# zaqmlp
nice,完美运行,TKS
作者: 001011 时间: 2023-11-11 17:54
这个代码很OK 但是只能选文件 不能选文件夹 再就是每打印一个 还要输入文件名 这比较麻烦
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |