以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  设为A5连续打印  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=176727)

--  作者:zhuxinhui
--  发布时间:2022/4/24 22:17:00
--  设为A5连续打印

If Tables("销售出库").Current.Locked = False Then
    MessageBox.show("单据未审核","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
End If

Dim Book As New XLS.Book(ProjectPath & "Attachments\\销售出库.xls")
Dim f As String = e.Form.Controls("ComboBox2").value
Dim fl As  String = ProjectPath & "reports\\销售出库.xls"
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(f)
With Ws.PrintSetting
    .PaperKind = 11 \'9为A4,11为A5
    .LandScape = True \'横向打印
    .MarginLeft = 20 \'左右边距设为20毫米
    .MarginRight = 20
    .MarginTop = 15 \'上下边距设为15毫米
    .MarginBottom = 15
    .AutoScale = True \'自动缩放
    .FitPagesDown = 1 \'垂直方向缩为1页
End With

App.Visible = True
Ws.PrintPreview
App.Quit

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20220424221618.jpg
图片点击可在新窗口打开查看
想设为A5针式连续打印,出错
--  作者:有点蓝
--  发布时间:2022/4/24 22:47:00
--  
参考:http://www.foxtable.com/webhelp/topics/2121.htm

打印输出

利用PageSetup属性,可进行各种打印设置。如:


Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
With Ws.PageSetup
    \'设置打印区域
    .PrintArea = "A1:H10"   \'打印工作表的指定区域
    .PrintArea = Ws.UsedRange.Address   \'打印工作表的使用区域
    .PrintTitleColumns = Ws.Columns("A:H").Address   \'打印列标题(在每一页的左边重复出现)
    .PrintTitleRows = Ws.Rows(1).Address \'打印行标题(在每一页的顶部重复出现)
    \'设置页面
    .PaperSize = MSExcel.XlPaperSize.xlPaperA4   \'纸张大小
    .LeftMargin = 30 \'页面左边距
    .RightMargin = 30\'页面右边距

……


--  作者:zhuxinhui
--  发布时间:2022/4/25 9:30:00
--  

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

怎样设置才能设为EXCEL预览时只有A4纸的一半呢

--  作者:有点蓝
--  发布时间:2022/4/25 10:00:00
--  
.PaperSize = MSExcel.XlPaperSize.xlPaperA5
--  作者:zhuxinhui
--  发布时间:2022/4/25 10:22:00
--  
设为A5后打印出来时还是打印二张A5,是否可以只打印一张A5
--  作者:zhuxinhui
--  发布时间:2022/4/25 10:24:00
--  
预览时也是A4纸的
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20220425102348.png
图片点击可在新窗口打开查看

--  作者:zhuxinhui
--  发布时间:2022/4/25 10:26:00
--  
Dim Book As New XLS.Book(ProjectPath & "Attachments\\销售出库.xls")
Dim f As String = e.Form.Controls("ComboBox2").value
Dim fl As  String = ProjectPath & "reports\\销售出库.xls"
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(f)



With Ws.PageSetup
    \'设置打印区域
    .PrintArea = "A1:H17"   \'打印工作表的指定区域
    .PrintArea = Ws.UsedRange.Address   \'打印工作表的使用区域

    \'设置页面
    .PaperSize = MSExcel.XlPaperSize.xlPaperA5   \'纸张大小
    .LeftMargin = 30 \'页面左边距
    .RightMargin = 30\'页面右边距
    .TopMargin = 50  \'页面顶部边距
    .BottomMargin = 50   \'页面底部边距
    \'.HeaderMargin = 40   \'页面顶端到页眉的距离
    \'.FooterMargin = 40   \'页脚到页面底端的距离
    \'.CenterHorizontally = True   \'页面水平居中
    \'.CenterVertically = True \'页面垂直居中
    \'\'设置页眉
    \'.LeftHeader = "打印日期: &D" \'左页眉,&D表示日期
    \'.CenterHeader = "&""隶书,常规""&20 数据分析表"   \'中页眉,并将字体设置为隶书和20号字大小
    \'.RightHeader = "打印者: " & App.UserName \'右页眉
    \'\'设置页脚
    \'.LeftFooter = "文件: &F  &A" \'左页脚,&F表示文件名,&A表示工作表名
    \'.CenterFooter = ""   \'中页脚为空
    \'.RightFooter = "第 &P 页  共 &N 页"  \'右页脚
    \'\'打印模式
    \'.Orientation = MSExcel.xlPageOrientation.xlPortrait  \'纵向打印
    \'.Orientation = MSExcel.xlPageOrientation.xlLandscape \'横向打印
    \'.PrintHeadings = True\'打印行号和列标
    \'.PrintGridlines = True   \'打印网格线
    \'\'缩放打印
    .Zoom = False\'以下设置将缩印在一页内
    .FitToPagesWide = 1  \'按照1页的宽度打印
    .FitToPagesTall = 1  \'按照1页的高度打印
End With
App.Visible = True
Ws.PrintPreview
App.Quit

--  作者:zhuxinhui
--  发布时间:2022/4/25 10:36:00
--  
老师这个是否要用到专业报表


--  作者:有点蓝
--  发布时间:2022/4/25 10:42:00
--  
没有指定默认纸张:http://www.foxtable.com/webhelp/topics/2904.htm
--  作者:zhuxinhui
--  发布时间:2022/5/5 14:53:00
--  
指定了默认纸张,当天就可以用,第二天又转回A4纸的,现在每日重设一次,这个怎 样解决
头晕