需要代码每15分钟在Excel中运行宏,但仅当用户打开文件时才需要

时间:2013-05-15 08:29:54

标签: excel-vba vba excel

我正在开展一个项目来更新生产计划中的生产笔记。我编写了一个宏来将数据输入到制造计划中,但是我需要每隔15分钟自动执行文件中的宏,但仅在用户打开制造计划时。我曾尝试在特定时间使用“Application.OnTime”,但如果它关闭了,这似乎打开了制造计划。我对VBA很新,所以对代码的任何帮助都会非常感激。我正在使用的代码非常基本:

Private Sub Workbook_Open()

'Application.OnTime TimeValue("08:00:30"), "Open_SFCDB"
'Application.OnTime TimeValue("08:16:30"), "Open_SFCDB"
'Application.OnTime TimeValue("08:32:30"), "Open_SFCDB"
'Application.OnTime TimeValue("08:48:30"), "Open_SFCDB"
'Application.OnTime TimeValue("09:04:30"), "Open_SFCDB"
......Etc, Etc for 24 hr period

'End Sub`

2 个答案:

答案 0 :(得分:1)

您可能希望将Application.OnTime过程放在第二个工作簿中。检查您的生产计划是否在运行时打开。

答案 1 :(得分:0)

尝试将其设置为活动工作簿,只有成功才能继续。

On Error Resume Next
Workbooks("ManufacturingSchedule").Activate
If Err <> 0 then
   .... do your update etc ....
end if