[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] VBS新手求思路,修改完善批量打印WORD文档

结合实际工作需要,搜索了论坛和网上的批量打印文件,就是一次只能指定一种类型,不能换类型,我的代码如下:
  1. Sub 批量打印WORD文档()
  2. Dim fileToOpen, GetOpenFilename, App, iFile
  3. fileToOpen = Application.GetOpenFilename(filefilter:="Word文档类型(*.do*),*.do*", FilterIndex:=4, Title:="请选择要处理的文档(可多选)", MultiSelect:=True)
  4. If Not IsArray(fileToOpen) Then
  5. MsgBox "你没有选择文件", vbOKOnly, "提示": Exit Sub
  6. Else: Set App = CreateObject("Word.Application")
  7. For Each iFile In fileToOpen
  8. Set WrdDoc = App.Documents.Open(iFile)
  9. App.Documents(WrdDoc).PrintOut
  10. App.Documents(WrdDoc).Close False
  11. T = T + 1
  12. Next
  13. End If
  14. MsgBox "操作完成!!" & vbCrLf & "打印了 " & T & " 个文件。", vbOKOnly, "提示"
  15. End Sub
复制代码
我"Word文档类型(*.do*),*.do*"换成, "表格文件类型(*.xl*),*.xl*",类似txt都可以改用

参照网上写法 AllFiles|*.*|(*.exe)|*.exe|(*.TXT)|*.TXT|(*.doc)|*.doc| 也出错

请前辈指导。

类似这个图片的下拉文件类型

直接改成"Word文档类型(*.*),*.*"
不行吗

TOP

回复 2# pd1

我上面代码单独一种没问题,但是要实现如图片中的文件类型下拉选择就不知道如何实现。 具体看图片右下角那里

TOP

就是我目前能单独实现批量打印word、或者批量打印excel、或者批量打印txt;
而我想像上图片右下角那样,比如我这个批量工具是要实现批量打印多个word和多个excel,那么我可以Allfiles,要其他文件类型时可以单独选择,而不是只能单独word,或者excel

TOP

【我"Word文档类型(*.do*),*.do*"换成, "表格文件类型(*.xl*),*.xl*",类似txt都可以改用】

既然你会改,那么把这个vbs命名为PrintWord.vbs
再创建一个PrintText.vbs
一个PrintExcel.vbs
不就好了

QQ 20147578

TOP

  1. fileToOpen = Application.GetOpenFilename(filefilter:="所有文件(*.*), *.*, word文档(*.doc;*.docx), *.doc;*.docx, excel文档(*.xls*), *.xls*, 文本文档(*.txt), *.txt", FilterIndex:=1, Title:="请选择要处理的文档(可多选)", MultiSelect:=True)
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

回复 5# czjt1234


    +PDF呢?+PPT呢?  本来用这个就是为了提高效率的,结果还弄那么多出来了

TOP

回复 6# zaqmlp

nice,完美运行,TKS

TOP

这个代码很OK   但是只能选文件 不能选文件夹     再就是每打印一个 还要输入文件名  这比较麻烦
非常好的论坛

TOP

返回列表