本文专门为你讲解,关于vba里面的Printout的使用方法。
首先我们来看Printout的语法,之后再来学习Printout如何来使用。
一、Printout语法
表达式.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName)
表达式 一个代表 Range 对象的变量。其实指的就是打印的范围了。
参数介绍
名称 必选/可选 数据类型 描述
From 可选 Variant 打印的开始页号。如果省略此参数,则从起始位置开始打印。
To 可选 Variant 打印的终止页号。如果省略此参数,则打印至最后一页。
Copies 可选 Variant 打印份数。如果省略此参数,则只打印一份。
Preview 可选 Variant 如果为 True,Microsoft Excel 将在打印对象之前调用打印预览。如果为 False(或省略该参数),则立即打印对象。
ActivePrinter 可选 Variant 设置活动打印机的名称。
PrintToFile 可选 Variant 如果为 True,则打印到文件。如果没有指定 PrToFileName,Microsoft Excel 将提示用户输入要使用的 输出文件的文件名。
Collate 可选 Variant 如果为 True,则逐份打印多个副本。
PrToFileName 可选 Variant 如果 PrintToFile 设为 True,则该参数指定要打印到的文件名。
下面我们给出Printout的中文语法
打印范围.PrintOut(从哪页开始打, 打到第几页, 打印份数, 打印求是否预览, 打印机名称, 是否打印到文件, 是否打印多个副本, 打印到文件的名称)
参数很多,其实我们在使用的时候,不一定要设置每个参数,只需要部分参数即可。
二、Printout使用举例
注意哦,本文所举的例子,均在Excel环境下使用。
A、设置打印的份数
Dim i%, Ps%
Ps = ExecuteExcel4Macro("GET.DOCUMENT(60)") '总页数
MsgBox "开始打印了…."
For i = 1 To Ps
ActiveSheet.PrintOut from:=i, To:=i
ActiveWindow.SelectedSheets.PrintOut From:=i, To:=i, Copies:=2, Collate:=True '打印第i页2份
Next i
下面,再给大家看看,单独设置的参数。主要给大家讲究打印的范围及份数。
B、打印某工作表的份数
Sub MyprintOut()
份数 = 2
Sheets("工作表名称").PrintOut Copies:=份数
End Sub
C、打印某区域的份数
Sub MyprintOut()
份数 = 3
Range("B2:G10").Select
Selection.PrintOut Copies:=份数
End Sub
D、打印活动工作薄
Sub MyprintOut()
份数 =4
ActiveWorkbook.PrintOut Copies:=份数
End Sub
E、打印当前workbook,并集合打印模式
Sub printOut()
份数 = 5
ActiveWorkbook.PrintOut Copies:=份数, Collate:=True
End Sub
F、打印当前workbook的所有sheet
Sub printOut()
ActiveWorkbook.Worksheet.PrintOut
End Sub
G、打印隐藏的工作表
Sub printOut()
Worksheets("Sheet2").Activate
Worksheets("Sheet1").Visible = False
Application.ScreenUpdating = False
Worksheets("Sheet1").Visible = True
Worksheets("Sheet1").PrintOut
Worksheets("Sheet1").Visible = False
End Sub