用vbs批量打印当前目录及子文件夹WORD文档

2010-05-21 13:28:27|  分类: 技术|举报|字号 订阅

最近搞毕业设计评语,有n多的表格要打印,一个个打印太麻烦,就写了vbs脚本,能打印当前目录下所有
doc文件,并递归打印其子目录,还能对不需要打印的文档进行过滤。
       用记事本新建一个txt文件,拷入如下代码后,另存时选择类型为“所有文件”,文件名为printdoc.vbs,或者其它名字,当扩展名必须为vbs。代码如下
 
filterstr=inputbox("请输入不要打印的文件,用逗号分隔。如2,1表示文件名包含2或者1的不打印,输入*表示打印所有:")
filtered=false
printme=true
if filterstr<>"*" and filterstr<>""  then
   filtered=true
   filterlist=split(filterstr,",")
end if
if filterstr<>"" then
  Set WshShell = WScript.CreateObject("WScript.Shell") 
  printsub(WshShell.CurrentDirectory)
  msgbox "完工啦!"
end if
Sub printsub(byval curdc)
  Set FSO =CreateObject("Scripting.FileSystemObject")
  Set WD = CreateObject("Word.Application")
  wd.visible=false
  Set FD = FSO.GetFolder(curdc)
  Set FN = FD.Files
  For Each F1 In FN
    if filtered then
        printme=true
        for each fl in filterlist
         if Instr(LCase(Left(F1.Name,len(F1.Name)-3)),fl)<>0 then             
             printme=false
         end if
        next
    end if
    If UCase(Right(F1.Name, 3)) = "DOC" and printme Then
        set doc=WD.Documents.Open(FD.Path & "\" & F1.Name)
        doc.PrintOut
        doc.close
        'WD.Documents.Close
        set doc=nothing
    End If
  Next
  wd.visible=true
  WD.Quit
  Set SubFD=FD.SubFolders
  For Each folder in SubFD
    printsub(folder.Path)
  Next
  Set SubFD=nothing
  set fn=nothing
  set fd=nothing
  Set WD = Nothing
  Set FSO = Nothing
End Sub 
        直接双击vbs程序运行,弹出一对话框,如果要打印所有文件,则输入“*”号并确定,如果有不想打印的文件,输入关键字并用逗号分隔,比如“递交,2.1“表示不打印所有文件名中包含”递交“两字或者”2.1”两字的文件。逗号输入用英文方式。程序能打印所有子目录及子子目录,希望大家用的愉快!

转载于:https://www.cnblogs.com/Dennis-mi/articles/3670238.html

Windows 批量打印相关推荐

  1. 批量打印pdf并合并_CAD批量打印攻略

    小明经常因为要转上千张PDF,而转到裂开 所以又菜手又懒的他,开始想办法了 如图,有4张不同幅面的图纸需要转PDF 首先安装打图精灵,通过qp命令呼出界面 (首次可能需要输入全命令qplot,再次使用 ...

  2. python批量打印word_Python使用扩展库pywin32实现批量文档打印实例

    本文代码需要正确安装Python扩展库pywin32,建议下载whl文件进行离线安装.然后调用win32api的ShellExecute()函数来实现文档打印,系统会根据文档类型自动选择不同的软件进行 ...

  3. java使用itextpdf生成PDF批量打印荣誉证书(指定位置输出文字)

    最近公司项目有个需求,批量打印荣誉证书,一开始尝试过传统的网络打印,控件打印,JS调用浏览器打印方法,遇到各种问题,比如定位不准,分页问题,​​缩放问题等.然后就自己研究,整理了一套打印方案,项目已测 ...

  4. 前端实现自动打印 批量打印

    欢迎关注微信公众号:[ 全栈攻略 ] 众所周知,前端打印的API只有window.print(),而我们要实现自动打印和批量打印,甚至连获取本地电脑的打印机有哪些都无法获取到.难道,前端对此真的无能为 ...

  5. 电子面单批量打印接口demo

    1 对接说明 (1).目前接口支持了:顺丰(SF).EMS(EMS).宅急送(ZJS).圆通(YTO).百世快递(HTKY).中通(ZTO).韵达(YD).申通(STO).德邦(DBL).优速(UC) ...

  6. python批量打印复印_惠普集群打印 小规模灵活批量打印方案

    在我们的日常工作中有一种叫"小批量打印",例如操作手册.广告宣传等. 惠普解决方案集群打印技术集计算机.网络和分布技术于一身,将多台惠普激光打印机组成一台虚拟超高速打印机,打印速度 ...

  7. 按文件名数值排序批量打印Excel文件

    起因   同事求助,工作中经常有一大批Excel表单需要打印,并且打印出来表单是有顺序要求,文件名已经排好了顺序,打印也要按这个顺序打.问我有没有什么快捷的办法. 初次尝试   刚开始没仔细想这个问题 ...

  8. 基于信封套打以及批量打印的实现过程

    最近需要向客户发送一些宣传资料,Excel列表里面有一两百个记录,本来想手写就算了,估摸着也花不了多少时间,不过写完一个信封我就后悔了,整天敲着键盘,书写的字太难看了,而且感觉手还是有点累.才第一个啊 ...

  9. 批量打印html文档,web页面的单页打印以及批量打印实现方法

    打印事件:window.print() 1.单页打印(布局打印): function printCnt(){ //1.获取当前页的html代码 var body = window.document.b ...

最新文章

  1. 谢文睿:西瓜书 + 南瓜书 吃瓜系列 11. 贝叶斯分类器
  2. 记录爬取2470条数据
  3. 自学python网站推荐-给初学者推荐的10个Python免费学习网站!赶紧收藏吧!
  4. python可变参数_Python 的四种共享传参详解
  5. windows php扩展下载,有没有专门下载 Windows 下的 PHP 扩展的网站?
  6. 【Python基础】解决matplotlib文字标签遮挡问题
  7. class会不会回收?用不到的class怎么回收_牛X的java程序员必备的GC基础知识, 面试肯定用的到...
  8. 苹果系统怎么降低版本_海信电视系统版本太低怎么升级?
  9. springcloud 熔断器Hystrix的具体使用
  10. 链栈判断回文 java_C语言链栈判断回文
  11. wordpress代码高亮插件coolcode
  12. 38、nginx的upstream目前支持的5种方式的分配
  13. jsp定义java方法_jsp中java成员变量、方法的声明以及使用
  14. 京东用户行为数据分析——以Python为主要工具
  15. 杭州云栖大会“弹性计算用户实践专场”等你来
  16. 专升本高数——第二章 一元函数的导数与微分【学习笔记】
  17. Ant Design Pro 使用Authorized组件做权限验证
  18. Linux下安装USB转串口驱动(PL2303)
  19. 服务器系统安装提示无法创建新的系统分区,安装win7旗舰版系统时提示“安装程序无法创建新的系统分区”怎么解决...
  20. 联想拯救者y7000键盘有几个按键失灵_y7000p键盘失灵

热门文章

  1. 什么是 CSS 预处理器/后处理器?
  2. RSA密钥对生成工具代码
  3. app上线指南(中文版)
  4. JS最佳实践——红皮书
  5. 刺激战场春节版年兽全网最详细位置,另附刺激战场更新内容
  6. webuploader-上传图片到服务器
  7. 绝对收敛级数重排定理的证明
  8. html鼠标悬停提示文字
  9. 联想笔记本电脑主板分析与维修(型号G50-70M版号NM-A273) 问题:按电源开关不开机无反应,充电指示灯不亮
  10. Bezier曲线原理及实现代码(c++)