按顺序在单独的工作簿中运行 EXCEL VBA 代码

按顺序在单独的工作簿中运行 EXCEL VBA 代码

我有七个 Excel 工作簿,它们有宏可以更新,并且每周都要运行一次。

我想创建一个宏,按顺序运行每个宏(并且关闭前一个宏,因为一些子宏具有通用名称)。

我创建了一个新的工作簿并用宏来运行它们,但它只运行第一个,然后停止。

我不想修改这七个工作簿中的 VBA 代码,因为我希望能够在需要时单独运行它们。

答案1

这取决于您的需要,但我会使用任务计划程序在一天中的特定时间运行任务。

确保宏在工作簿打开时运行,使用类似

Private Sub Workbook_Open()
'my code or a function call to the code I want to run
End Sub

然后,您只需在任务计划程序和新操作窗口中创建多个任务,设置参数和程序路径,程序路径为 Excel,参数为/e "c:\YourWorkbook.xls"

这只有在您知道每项任务需要多长时间时才会起作用。这也意味着您的 Excel 文件将在加载时运行宏,无论它们是如何打开的(这可能是也可能不是理想的)。

相关内容