Excel VBA打印到特定的打印机托盘

时间:2009-04-20 21:42:21

标签: excel vba excel-vba

在Excel(2007)VBA中如何将工作表打印到特定的打印机托盘?这将只打印到打印机上的默认纸盘:

ws.PrintOut ActivePrinter:="\\print_server\printer_name"

1 个答案:

答案 0 :(得分:1)

Microsoft为此问题提供了一个ugly solution;使用SendKeys从打印设置对话框中手动选择正确的纸盘。

另一种选择可能是在Windows中设置其他打印机,其中每台打印机实际上都链接到同一台打印机上的不同托盘。然后,您可以在VBA中选择适当的托盘。 This article有详细信息。

或者,如果您的打印机在要打印的纸盘中的纸张尺寸不同,则可以设置(例如):

ws.PageSetup.PaperSize = xlPaperLegal

打印机将自动选择正确的纸盘。我刚刚在我的打印机上尝试了这一点,并强制将纸张打印在手动纸盘上,因为我实际上没有合法尺寸的纸盘。

相关问题