Keith™ 发表于 2008-3-12 15:34:45

系统打印事件

有谁知道是否可以使用系统打印机拦截end_print事件?
我有几个定期打印的电子表格,但是在打印的页面上有很多不需要和不需要的信息。我可以成功地隐藏废话,但我需要在打印完成后将其重新打开。任何想法?
**** Hidden Message *****

FengK 发表于 2008-3-12 15:42:21

在excel中?打开宏记录器,看看能不能找到什么?

Keith™ 发表于 2008-3-12 19:16:15

可惜excel只有WorkbookBeforePrint事件,没有WorkbookAfterPrint。也许用WMI来监控打印机que?

Joro-- 发表于 2008-3-12 19:28:41


begin_print事件之后什么都没有...我必须看看我是否能找到另一种方法..也许正如凯莉所说.挂接到系统并监视打印机。但随后它可能会同时打印一些东西.我必须再考虑一下这个问题。

Keith™ 发表于 2008-3-13 05:59:20

嗨,Keith,
我想您可以使用一个宏,该宏将在打印后手动启动,这将取消隐藏所有隐藏的行和列。如果存在一些您不想处理的隐藏行和列,则可以在打印之前手动启动另一个子,以在某些公共数组变量中注册最初隐藏的列。然后打印后的第二个子将不会取消隐藏最初隐藏的行和列。

Keith™ 发表于 2008-3-13 08:19:28


难道您不能在循环和打印后取消隐藏信息吗?我在这里猜测,但是PrintOut方法不应该只打印您设置的内容吗?在隐藏了信息的每张纸上调用PrintOut方法后,我认为您可以循环回去并取消隐藏需要再次查看的列/行。

Keith™ 发表于 2008-3-13 08:58:25

除了我不调用PrintOut方法…我想我可以…但如何实现它将是关键

Keith™ 发表于 2008-3-13 15:12:32


那么您现在打印工作表的情况如何?您使用Windows API吗?如果是这样,那么EndDoc方法可能是取消隐藏信息的关键。

Keith™ 发表于 2008-3-14 08:13:47

当前,用户单击excel应用程序中的打印机图标,或从菜单中选择“打印预览”项并从中打印。

Keith™ 发表于 2008-3-14 08:21:03

您是否希望自动执行需要打印的电子表格组的流程,还是希望临时打印每个电子表格?
页: [1] 2
查看完整版本: 系统打印事件