如果要使用Excel自动化办公室,您可能会想知道是否存在一种每天在给定时间自动打印单元格区域内容的方法。例如,您可能有一个始终打开的工作簿,记录了来自其他程序的输入。您可能希望在每天的特定时间自动打印一个包含摘要信息的范围。

您可以使用两种方法来解决此问题,包括使用Windows脚本处理打印。但是,由于工作簿始终处于打开状态,因此您不必诉诸于此。相反,您可以依赖Excel的本机宏功能。

这里考虑的解决方案需要两个宏。第一个是在首次打开工作簿时运行的代码。它设置了正确的事件处理程序,以触发执行打印的实际宏。

Private Sub Workbook_Open()

'Schedule the printing     Application.OnTime TimeValue("17:00:00"), "PrintMe"

End Sub

这个特殊的marco将OnTime方法设置为在下午5:00时触发。到达了。若要指定一天中的其他时间,只需在宏中更改时间(使用24小时表示法)。下午5:00滚动,Excel将运行PrintMe宏:

Private Sub PrintMe()

Sheets(2).PrintOut     'Reschedule the printing     Application.OnTime TimeValue("17:00:00"), "PrintMe"

End Sub

该宏什么都不做,只打印工作簿中的第二张纸(应该包含您要打印的摘要信息),然后将OnTime方法重置为在下午5:00再次触发。第二天。如果要打印不同的数据范围,只需更改宏第一行中与PrintOut方法一起使用的对象。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(10632)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: