【发布时间】:2019-06-25 08:59:16
【问题描述】:
当执行下面的代码时,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%。 感谢您的任何建议!
【问题讨论】:
-
那么,
lastrow是什么,它从何而来?Barcode是什么?etiket / ekleTable好像是listObjects、listColumns或者PivotTables,里面的数据怎么看?什么是科里?Barcode.PrintOut , Prev....表示您忽略了对Barrcode.Printout的函数调用的第一个参数...。请试试这个:stackoverflow.com/help/minimal-reproducible-example 据我所知,错误发生在Barcode内部,这可能是任何事情. -
你是对的。我在上面的帖子中尽可能多地指定了我的代码和我的问题。我希望,现在更清楚了。我猜这与电子表格中发生的事情无关。
-
似乎是默认行为,这里有一个解决方法:ozgrid.com/forum/forum/help-forums/excel-general/… 我会看看我是否可以测试并写一个答案。
-
环顾四周,可能需要注意的关键字是“Mopier”-模式。您是否确认您的复印机甚至可以接收打印多份的命令?