Foxtable(狐表)用户栏目专家坐堂 → [求助]EXCEL报表,直接打印时,如何禁止自动旋转


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

主题:[求助]EXCEL报表,直接打印时,如何禁止自动旋转

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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
[求助]EXCEL报表,直接打印时,如何禁止自动旋转  发帖心情 Post By:2014/6/18 17:05:00 [显示全部帖子]

 

禁止自动旋转

打印报表的时候,系统默认会自动根据实际纸张的大小,判断是否需要旋转打印内容,以便更好地配合纸张。
如果不需要自动旋转打印内容,可以将AutoRotate属性设为False。


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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:05:00 [显示全部帖子]

Dim doc As New PrintDoc()
doc
.PageSetting.Width = 200 '纸张宽度为200毫米
doc
.PageSetting.Height = 170 '纸张高度为170毫米
doc
.AutoRotate = False '如果纸张的宽度超过高度,要加上这行代码
'添加打印内容

doc
.Preview


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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:06:00 [显示全部帖子]

上面是帮助上写的,如果纸张的宽度超过高度,要加上这行代码


 


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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:07:00 [显示全部帖子]

我是用下面的方法设置EXCEL报表的:

页面设置

PrintSetting有很多子属性,其中和页面设置相关的有:

PaperKind: 纸张类型代码
Landscape: 逻辑型,是否横向打印
MarginLeft: 左边距,单位为毫米
MarginRight: 右边距,单位为毫米
MarginTop: 上边距,单位为毫米
MarginBottom: 底边距,单位为毫米


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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:13:00 [显示全部帖子]

设了横向打印,预览正常,打印出来自动旋转了。

 

 


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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:13:00 [显示全部帖子]

这个是打印代码:Dim Book As New XLS.Book(ProjectPath & "Attachments\成品出库2.xls") '打开模板
Dim file As String = ProjectPath & "Reports\成品出库.xls"
    Book.Build() '生成细节区
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
    With Sheet.PrintSetting
        .PaperKind = 11 '设为A5纸
        .LandScape = True '横向打印
        .MarginLeft=10  '左边距,单位为毫米
        .MarginRight= 10  '右边距,单位为毫米
        .MarginTop = 10 '上下边距
        .MarginBottom = 10 '下边距
    End With
End If
Book.Save(file) '保存工作簿
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(file)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.PrintOut '直接打印
wb.save
wb.close
App.Quit

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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:22:00 [显示全部帖子]

用系统菜单上设计报表预览报表那里,生成一个报表,打印出来也是自动旋转了,是不是我报表设置有问题?

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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:22:00 [显示全部帖子]

用系统菜单上设计报表预览报表那里,生成一个EXCEL文件,打印出来也是自动旋转了,是不是我报表设置有问题?

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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:39:00 [显示全部帖子]

换了几台电脑,有激光与针式,多有这样。我试一下

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


加好友 发短信
等级:幼狐 帖子:114 积分:846 威望:0 精华:0 注册:2014/6/8 9:53:00
  发帖心情 Post By:2014/6/18 17:47:00 [显示全部帖子]

试了,只要是A5,设了横向,打出来却不是横向的。

 


 回到顶部
总数 16 1 2 下一页