Arrays Excel vba-打印(数组)
关于为什么下面用于打印的vba无法工作的快速问题。。。如果我单独设置它(Sheet1.PrintOut),它可以很好地打印出来,但是如果我作为数组(Sheet1、Sheet2、Sheet3)进行设置,打印出来就不起作用。有人能解释为什么吗Arrays Excel vba-打印(数组),arrays,vba,excel,printing,Arrays,Vba,Excel,Printing,关于为什么下面用于打印的vba无法工作的快速问题。。。如果我单独设置它(Sheet1.PrintOut),它可以很好地打印出来,但是如果我作为数组(Sheet1、Sheet2、Sheet3)进行设置,打印出来就不起作用。有人能解释为什么吗 Sub printnow() Dim Sheet1 As Worksheet Dim Sheet2 As Worksheet Dim Sheet3 As Worksheet With ThisWorkbook Set Sheet1 = .Sheets("
Sub printnow()
Dim Sheet1 As Worksheet
Dim Sheet2 As Worksheet
Dim Sheet3 As Worksheet
With ThisWorkbook
Set Sheet1 = .Sheets("database1")
Set Sheet2 = .Sheets("database2")
Set Sheet3 = .Sheets("database3")
'Setting up the print setup
Sheet3.PageSetup.PaperSize = xlPaperLegal
Sheet3.PageSetup.Orientation = xlPortrait
'Print
End With
Array(Sheet1,Sheet2.Sheet3).PrintOut Copies:=1
End Sub
Array
函数调用返回一个包含Sheet1、Sheet2和Sheet3的Variant()
。Variant()
没有.PrintOut
方法-它不是对象。如果要对数组中的每个对象调用.PrintOut
,只需在其上循环:
Dim sheet As Variant
For Each sheet In Array(Sheet1, Sheet2, Sheet3)
sheet.PrintOut Copies:=1
Next
Array
函数调用返回一个包含Sheet1、Sheet2和Sheet3的Variant()
。Variant()
没有.PrintOut
方法-它不是对象。如果要对数组中的每个对象调用.PrintOut
,只需在其上循环:
Dim sheet As Variant
For Each sheet In Array(Sheet1, Sheet2, Sheet3)
sheet.PrintOut Copies:=1
Next
您可以将工作表名称数组传递给
工作表
,它将对其进行处理
表单(数组(“数据库1”、“数据库2”、“数据库3”))。打印输出副本:=1
您也可以使用工作表。名称:
Sheets(数组(Sheet1.Name,Sheet2.Name,Sheet3.Name))。打印副本:=1
也可以使用图纸的索引:
工作表(数组(1,2,3))。打印输出副本:=1
您可以将工作表名称数组传递给工作表
,它将对其进行处理
表单(数组(“数据库1”、“数据库2”、“数据库3”))。打印输出副本:=1
您也可以使用工作表。名称:
Sheets(数组(Sheet1.Name,Sheet2.Name,Sheet3.Name))。打印副本:=1
也可以使用图纸的索引:
工作表(数组(1,2,3))。打印输出副本:=1
您可以使用此工作簿。工作表(数组(“数据库1”、“数据库2”、“数据库3”))。打印输出副本:=1
-如果您选择了多个工作表,则相当于Excel的“打印活动工作表”选项。您可以使用此工作簿。工作表(数组(“数据库1”、“数据库2”),“数据库3”))。打印输出副本:=1
-这相当于Excel的“打印活动工作表”“如果您选择了多张图纸,则为选项。但它是否会保留我选择的页面方向/单元格选择规范?您具有相同的可选打印输出参数。”。如果不指定任何参数,则每张图纸都将使用上次打印时使用的设置假设我将上述图纸1重命名为Page1,将图纸2重命名为Page2,将图纸3重命名为Page3,其他所有参数都相同。如何制作图纸(数组(第1页、第2页、第3页))。打印输出工作?或者循环是我更新答案以演示其他选项的唯一方式。但它会保留我选择的页面方向/单元格选择规范吗?您有相同的可选打印输出参数。如果不指定任何参数,则每张图纸都将使用上次打印时使用的设置假设我将上述图纸1重命名为Page1,将图纸2重命名为Page2,将图纸3重命名为Page3,其他所有参数都相同。如何制作图纸(数组(第1页、第2页、第3页))。打印输出工作?或者循环是我更新答案以演示其他选项的唯一方法。