在Excel(2007)VBA中如何将工作表打印到特定的打印机托盘?这将只打印到打印机上的默认纸盘:
ws.PrintOut ActivePrinter:="\\print_server\printer_name"
答案 0 :(得分:1)
Microsoft为此问题提供了一个ugly solution;使用SendKeys
从打印设置对话框中手动选择正确的纸盘。
另一种选择可能是在Windows中设置其他打印机,其中每台打印机实际上都链接到同一台打印机上的不同托盘。然后,您可以在VBA中选择适当的托盘。 This article有详细信息。
或者,如果您的打印机在要打印的纸盘中的纸张尺寸不同,则可以设置(例如):
ws.PageSetup.PaperSize = xlPaperLegal
打印机将自动选择正确的纸盘。我刚刚在我的打印机上尝试了这一点,并强制将纸张打印在手动纸盘上,因为我实际上没有合法尺寸的纸盘。