我需要在特定时间每天运行我的Excel VBA。我google的ontime方法,但我没有得到它的全面理解。我会提出这个来清理我对时间方法的困惑。Excel OnTime Events Scheduler
包含excel工作簿是否必须在运行之前为运行时方法打开。如果是,是否有办法在特定时间自动打开Excel工作簿。我知道它是由Timer或Windows任务计划程序完成的。 有人可以通过这个工作。我的当前代码是否适用于自动化任务调度程序?
我当前的代码如下所示:
Sub StartTimer()
Application.OnTime EarliestTime:=TimeValue("11:15:00"), Procedure:="rune", _
Schedule:=True
End Sub
Sub rune()
SourceOneUpdate
SourceTwoUpdate
SourceThreeUpdate
GenerateReport
End Sub
Private Sub workbook_open()
StartTimer
End Sub
这是基于对这个职位的想法:http://www.cpearson.com/excel/OnTime.aspx其中螨是有帮助的。即使这个工作簿是开放的,它也不会自动运行。有人可以帮助我看到为什么这不能正常工作。
在此先感谢。
事实上,宏将只有在工作簿打开运行。要么保持工作簿打开,要么 - 您可以按照您的建议 - 使用调度程序来运行“excel.exe yourfile.xlsm”。然后将您的宏绑定到工作簿“WorkBook_Open”事件,并检查当前时间。 –
@ d-stroyer可以很容易地成为一个有效的答案 – 2013-08-21 13:18:11