Foxtable(狐表)用户栏目专家坐堂 → Excel打印如何指定打印机?


  共有5743人关注过本帖树形打印复制链接

主题:Excel打印如何指定打印机?

帅哥哟,离线,有人找我吗?
sunsenfeng
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:599 积分:4188 威望:0 精华:0 注册:2011/12/21 11:25:00
  发帖心情 Post By:2013/5/15 16:39:00 [只看该作者]

创建窗体,在窗体上创建下拉窗口,在窗体的AfterLoad的事件中写入下面代码,就能列出本地打印机列表

Dim LocalPrinters As String="|"

For Each LocalPrinter As String In InstalledPrinters
    LocalPrinters=LocalPrinters+"|"+LocalPrinter
Next

Dim cmb As WinForm.ComboBox
cmb = Forms("窗口1").Controls("ComboBox1")
cmb.ComboList =  LocalPrinters


 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3358 积分:24758 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2013/5/15 19:32:00 [只看该作者]

可以先通过InstalledPrinters获取到本机已安装打印机名 可以考虑设置一个选择窗口 在打印之前先弹出来 用一个变量来保存选择的打印机名 然后在后面调用

Dim Book As New XLS.Book(ProjectPath & "Attachments\你的模板名.xls")
Dim fl As String = ProjectPath & "Reports\你的模板名.xls"
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim App As New MSExcel.Application
App.Visible = True
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.PrintOut(ActivePrinter:="你的打印机名")

PrintOut还有好几个参数 我这里只是给你一个思路 如果不想弹出excel界面 直接打印 可以先把APP.VISIBLE设置为false ranhou printout 的preview设置为false

[此贴子已经被作者于2013-5-15 19:35:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lsf5138
  13楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:242 积分:2235 威望:0 精华:0 注册:2011/8/16 22:33:00
  发帖心情 Post By:2013/5/15 19:42:00 [只看该作者]

狐狸爸爸
  11楼信息 | 搜索 | 邮箱 | 主页 | UC


 加好友  发短信
等级:管理员帖子:33558积分:175851威望:0精华:89注册:2008-6-17 17:14:00
  发帖心情 Post By:2013-5-13 15:47:00 [只看该作者

这个不能指定打印机的


 回到顶部
帅哥哟,离线,有人找我吗?
晕了快扶我
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1199 积分:7102 威望:0 精华:0 注册:2013/3/4 18:02:00
  发帖心情 Post By:2013/5/15 21:54:00 [只看该作者]

谢谢各位的指导,我琢磨下,如果出成果我会拿出来分享

 回到顶部
总数 14 上一页 1 2