Excel .printout命令:为什么要为每个副本分别发送打印命令?

Excel .printout命令:为什么要为每个副本分别发送打印命令?,excel,vba,printing,Excel,Vba,Printing,执行下面的代码时,Excel会为每个副本向打印机发送单独的打印输出命令,而不是为所有副本只发送一个命令 这个问题大大减慢了打印过程。如何通过向打印机发送较少的命令而不是为每个副本单独发送命令来提高速度 Sub tryPrint() Dim Barcode As Worksheet Set Barcode = Sheets("ETIKET") Application.PrintCommunication = False With Barcode.PageSetup .FitToPagesT

执行下面的代码时,Excel会为每个副本向打印机发送单独的打印输出命令,而不是为所有副本只发送一个命令

这个问题大大减慢了打印过程。如何通过向打印机发送较少的命令而不是为每个副本单独发送命令来提高速度

Sub tryPrint()
Dim Barcode As Worksheet
Set Barcode = Sheets("ETIKET")

Application.PrintCommunication = False
With Barcode.PageSetup
   .FitToPagesTall = 1
   .FitToPagesWide = 1
End With
Application.PrintCommunication = True

Barcode.PrintOut , Preview:=False, Copies:=4, ActivePrinter:="\\MUHASEBE\Argox OS-214 plus series PPLA"

End Sub
例如:指定了4份副本后,代码会向打印机发送4个不同的命令:

Barcode 1
Barcode 1
Barcode 1
Barcode 1
相反,我希望它以如下方式发送:

Barcode 4
这样的话,这一过程将加快100%。
谢谢你的建议

我无法重现这一点,但解决方案显然有效:

资料来源:

将参数传递给
时,设置
Collate:=False
。打印输出应该可以实现这一功能。在此之后,您必须手动对副本进行排序,但由于您打印的是同一标签,因此没有任何区别


文档可以在这里找到:

我无法复制这个,但解决方案显然有效:

资料来源:

将参数传递给
时,设置
Collate:=False
。打印输出应该可以实现这一功能。在此之后,您必须手动对副本进行排序,但由于您打印的是同一标签,因此没有任何区别


文档可以在这里找到:

那么,什么是
lastrow
,它来自哪里?什么是
条形码
etiket/ekleTable
似乎是一个listObjects、listColumns或PivotTables,其中的数据看起来如何?科利是什么
Barcode.PrintOut,Prev..
表示忽略对
Barrcode.PrintOut
的函数调用的第一个参数。。。。请试一试:据我所知,错误发生在
条形码的内部,可能是任何东西。你是对的。我在上面的帖子中尽可能详细地说明了我的代码和我的问题。我希望,现在更清楚了。我不认为这与电子表格中正在发生的事情有关。这似乎是默认行为,这里有一个解决方法:我将看看是否可以测试这一点并写出答案。环顾四周,可能需要注意的关键字是“Mopier”模式。您是否验证了您的复印机甚至可以接收到打印多份副本的命令?那么,什么是
lastrow
,它来自哪里?什么是
条形码
etiket/ekleTable
似乎是一个listObjects、listColumns或PivotTables,其中的数据看起来如何?科利是什么
Barcode.PrintOut,Prev..
表示忽略对
Barrcode.PrintOut
的函数调用的第一个参数。。。。请试一试:据我所知,错误发生在
条形码的内部,可能是任何东西。你是对的。我在上面的帖子中尽可能详细地说明了我的代码和我的问题。我希望,现在更清楚了。我不认为这与电子表格中正在发生的事情有关。这似乎是默认行为,这里有一个解决方法:我将看看是否可以测试这一点并写出答案。环顾四周,可能需要注意的关键字是“Mopier”模式。您是否验证过您的复印机甚至可以接收到打印多份副本的命令?这非常有效。没想到会有什么不同。非常感谢。这很好用。没想到会有什么不同。非常感谢。