在特定时间每天调用public sub,而无需再次重新打开文件

时间:2017-10-18 17:22:01

标签: excel vba excel-vba

我在excel工作簿的第1单元中定义了这个公共子

Public Sub AutoUpdate()
    Application.OnTime TimeValue("22:40:00"), "GetTime"
End Sub

在我的工作簿代码中,我有这个称为AutoUpdate方法。

Public Sub Workbook_Open()
    Call AutoUpdate
End Sub

我的问题是,当我打开文件时,它的时间是22:40:00并且它调用"GetTime"但是第二天excel要么崩溃,要么再没有调用该函数。 这个Application.OnTime method是否适用于每一天而无需再次重新打开(刷新)工作簿。

1 个答案:

答案 0 :(得分:0)

尝试使用以下代码:

undefined

DailyRun代码:

const segment = {Y:123};
let or = "Y";
let X;
({X, X = X || segment[or]} = segment);

console.log(X);

DailyRun 宏在每天结束时调用自己来创建新的Ontime事件。

如果要使用Windows 任务计划程序运行宏,请将宏添加到Workbook Open事件:

Private Sub Workbook_Open()
   Call DailyRun
End Sub

不要忘记关闭工作簿。