以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]EXCEL报表,直接打印时,如何禁止自动旋转  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=52585)

--  作者:33888
--  发布时间:2014/6/18 17:05:00
--  [求助]EXCEL报表,直接打印时,如何禁止自动旋转
 

禁止自动旋转

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


--  作者:33888
--  发布时间: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
--  发布时间:2014/6/18 17:06:00
--  

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


 


--  作者:33888
--  发布时间:2014/6/18 17:07:00
--  
我是用下面的方法设置EXCEL报表的:

页面设置

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

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


--  作者:Bin
--  发布时间:2014/6/18 17:10:00
--  
Landscape: 逻辑型,是否横向打印  设置这个看吧
--  作者:33888
--  发布时间:2014/6/18 17:13:00
--  

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

 

 


--  作者:33888
--  发布时间: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

--  作者:有点甜
--  发布时间:2014/6/18 17:17:00
--  

 这是不可能的。

 

 你单独弄一个excel表格,设置成横向打印,看看打印情况。


--  作者:33888
--  发布时间:2014/6/18 17:22:00
--  
用系统菜单上设计报表预览报表那里,生成一个报表,打印出来也是自动旋转了,是不是我报表设置有问题?
--  作者:33888
--  发布时间:2014/6/18 17:22:00
--  
用系统菜单上设计报表预览报表那里,生成一个EXCEL文件,打印出来也是自动旋转了,是不是我报表设置有问题?