Foxtable(狐表)用户栏目专家坐堂 → 自定打印纸张问题


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

主题:自定打印纸张问题

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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
自定打印纸张问题  发帖心情 Post By:2016/7/25 16:06:00 [只看该作者]

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=54472&skin=0
根据这个做了修改  发现本地打印机没问题  但是如果是共享打印机就报错


图片点击可在新窗口打开查看此主题相关图片如下:123.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/25 16:08:00 [只看该作者]

 有可能是共享打印机不支持你动态添加纸张的。你需要去到打印机所在的电脑,添加对应的纸张,然后再用对应的数值设置。

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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2016/7/25 16:15:00 [只看该作者]



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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2016/7/26 10:38:00 [只看该作者]

按照你的方法试了  但是调用的时候还是会出错


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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2016/7/26 10:38:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:123.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/26 10:40:00 [只看该作者]

 先获取你添加的纸张的值是什么,然后再指定啊。

 

 只要纸张存在值正确,不可能报错


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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2016/7/26 10:55:00 [只看该作者]

这个代码是在报表事件的afterbulid事件中

Dim Book As New XLS.Book '定义一个Excel工作簿
book=e.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
'
'Dim cps As new CustomPaperSize.CustomPaperSize()
'cps.SetPrintForm(DefaultPrinter,"送货单",100*21.75, 100*13.9)
'cps.SetPrintForm(DefaultPrinter,"加工单",100*21.75, 100*27.95)
Dim prtdoc As new Printing.PrintDocument()
prtdoc.PrinterSettings.PrinterName = DefaultPrinter

Select Case e.Book.TempLate
    Case "对账单"
        With Sheet.PrintSetting
            ''页眉左边为日期,中间为时间,右边为表名
            '.Header = "&L&D &C&T &R&A"
            '在页脚右边打印页号和总页数
            .Footer = "&R第&P页,总&N页"
        End With
    Case "送货单","送货单无金额"
        For Each ps As System.Drawing.Printing.PaperSize In prtdoc.PrinterSettings.PaperSizes  '生成打印机的纸张下拉列表
            If ps.PaperName = "送货单" Then
                Sheet.PrintSetting.PaperKind = ps.RawKind
            End If
        Next
    Case "加工单","加工单含成本"
        For Each ps As System.Drawing.Printing.PaperSize In prtdoc.PrinterSettings.PaperSizes  '生成打印机的纸张下拉列表
            If ps.PaperName = "加工单" Then
                Sheet.PrintSetting.PaperKind = ps.RawKind
            End If
        Next
        
End Select
[此贴子已经被作者于2016/7/26 10:55:46编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/26 11:39:00 [只看该作者]

如果你直接在excel文件那里设置打印纸张,能否选择对应的纸张?

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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2016/7/26 19:02:00 [只看该作者]

以下是引用大红袍在2016/7/26 11:39:00的发言:
如果你直接在excel文件那里设置打印纸张,能否选择对应的纸张?
手动打印可以的


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/26 19:49:00 [只看该作者]

1、你的默认打印机是不是这个打印机?

 

2、试试直接用vba

 

http://www.foxtable.com/webhelp/scr/2121.htm

 


 回到顶部