Foxtable(狐表)用户栏目专家坐堂 → [求助]用vba生成excel报表的问题


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

主题:[求助]用vba生成excel报表的问题

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 17:12:00 [显示全部帖子]

  直接控制,一页内容缩放到一页打印即可

 

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'页面右边距
    .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


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 17:50:00 [显示全部帖子]

 回复楼上,应该是做不到分页缩放打印的,只能整体缩放。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 17:52:00 [显示全部帖子]

以下是引用pcxjxjhkw在2014-9-15 17:46:00的发言:
另一问题,table打印时,如何设置不打印行号

 

1、可以用excel模板导出后打印;

 

2、若直接打印,就这样写代码

 

Tables("表A").grid.Cols(0).visible = False
Tables("表A").Print(True, False)

[此贴子已经被作者于2014-9-15 17:52:53编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 19:10:00 [显示全部帖子]

 用代码打印的情况,就在代码上控制,具体问题,请详细说明

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 19:41:00 [显示全部帖子]

 

http://www.foxtable.com/help/topics/2641.htm

 

属性

 

PrinterName
PaperSource
PaperRawKind
PaperKind
PaperWidth
PaperHeight
LeftMargin
TopMargin
RightMargin
BottomMargin
LandScape
Title
SubTitle
PageHeader
PageFooter
PageHeaderLine
PageFooterLine
SpaceAfterPagerHeader
SpaceBeforePagerFooter
SpaceAfterTitle
SpaceAfterSubtitle
PageHeaderFont
PageFooterFont
TitleFont
SubtitleFont
PageColumns
WaterMark
RepeatFixedRows
RepeatFixedCols
PrintFixedCols
ExcuteDrawCell
FitIntoPage
WrapMemo
ExtendMemoRow
OnlyPrintTitleOnFirstPage
AdjustFontSize
OnlySelectedRows
Renumber
EnableStyle
PrintTitle
PrintHeader
PrintFooter
ExtendLastCol
DirectFitIntoPage
DirectFitIntoOnePage
DirectExtendLastCol
DirectPageHeader
DirectPageFooter
DirectHighLight
DirectPageHeaderFont
DirectPrintHeader
DirectPrintFooter


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/15 20:09:00 [显示全部帖子]

以下是引用pcxjxjhkw在2014-9-15 20:01:00的发言:
英语差,不知道对应的属性意思是什么,甜老师,能否发个完整的?谢谢 、

 

百度查询一下你就知道了,没有具体的翻译,自己猜一下吧。


 回到顶部