加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ExcelVBA打印工作表——PrintOut方法(转)

(2018-09-16 11:33:54)
标签:

活力星语

金钟常鸣

编程

excel

分类: VBA

VBA中,使用PrintOut方法来打印工作表。例如,语句:

ActiveSheet.PrintOut

将打印当前工作表。

 

PrintOut方法的语法如下:

工作表对象.PrintOut(From,To,Copies,Preview,ActivePrinter,PrintToFile,Collate,PrToFileName,IgnorePrintAreas)

说明:

  • 所有参数均可选。使用适当的参数指定打印机、份数、逐份打印以及是否需要打印预览。使用参数PrintToFile和参数PrToFileName将工作表打印到文件。参数From和参数To用于指定打印的页码范围。

  • 参数From指定开始打印的页码。如果忽略,则从头开始打印。

  • 参数To指定最后打印的页码。如果忽略,则打印到最后一页。

  • 参数Copies指定要打印的份数。如果忽略,则只打印1份。

  • 参数Preview指定打印前是否要预览打印效果。设置为True则打印预览;设置为False(默认值)则直接打印。

  • 参数ActivePrinter设置当前打印机的名称。

  • 参数PrintToFile设置为True,将打印到文件。如果没有指定参数PrToFileName,将提示用户输入要输出的文件名。

  • 参数Collate设置为True将逐份打印。

  • 参数PrToFileName在参数PrintToFile设置为True时指定想要打印到文件的名称。

  • 参数IgnorePrintAreas设置为True将忽略打印区域,打印整份文档。

 

示例1:实现逐行批量打印

如下图所示的工作表,除表头的第1行不变外,从第2行开始逐条打印记录。http://s14/mw690/005Wpjj7zy7nFtPzHiJ6d&690

代码如下:

http://s8/mw690/005Wpjj7zy7nFtYEc7l97&690


说明

  • PrintOut方法只打印工作表中的可见行。因此,将要打印的行逐条显示,同时隐藏不需要打印的行,从而实现逐条打印。

 

示例2:只打印奇数页


下面是一段简单的小程序,可以只打印奇数页。

Sub PrintOddPages()

   Dim k As Integer

   k = 1

   Do While (k < 800)

        ActiveSheet.PrintOut From:=k, to:=k

        k = k + 2

   Loop

End Sub


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有