【问题标题】:Repeat Macro For Specified Time Interval在指定的时间间隔内重复宏
【发布时间】:2019-07-11 05:57:20
【问题描述】:

我有四个宏,我想以指定的顺序每 10 分钟运行一次。目前我只是设置了一个提醒来运行它们,但想自动化这个过程。理想情况下,我希望有一个单独的宏,每 10 分钟重复所有四个宏(按顺序)。

我尝试在四个宏的末尾添加Application.OnTime Now + TimeValue("00:10:00"), "Macro_Name"。问题是其中两个宏需要一些时间来处理。

还尝试创建一个单独的宏“Repeat_10mins”,并使用OnTime 函数构建它。似乎只工作一次,不重复(即设置后运行 10 分钟但不重复)。

Sub Repeat_10mins

Workbooks("Book1.xlsm").RefreshAll

'Repeat Macro1
 Application.OnTime Now + TimeValue ("00:10:00"), "Macro1"

'Repeat Macro2
 Application.OnTime Now + TimeValue ("00:10:00"), "Macro2"

(etc for Macro 3/4)

End Sub

【问题讨论】:

  • 您是否尝试过通过调度任务来运行这些?

标签: excel vba


【解决方案1】:

你需要再创建一个这样的宏:

Sub Timer()

Application.OnTime Now + TimeValue("00:10:00"), "operation"

End Sub

operation 是您希望每 10 分钟运行一次的宏的名称。

在您构建的宏中,您只需在末尾添加一行 Call Timer

说明: 在宏 operation 结束时,它将调用宏 timer,该宏将在 10 分钟内运行 operation

让我知道它是否有效或者您是否需要更多帮助。

【讨论】:

  • 完美!非常感谢@wisniadj
猜你喜欢
  • 1970-01-01
  • 2016-05-27
  • 2012-11-18
  • 2015-08-13
  • 1970-01-01
  • 2021-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多