让VBA点击插件工具栏上的按钮... CommandBars?

时间:2017-02-20 09:16:07

标签: excel vba excel-vba

我的实时数据需要每小时更新一次,通过路透社插件提供。这通常是自动的,但因为我正在通过不同类型的数据进行馈送,所以只有在您手动单击“刷新”按钮时才会刷新它。因此,除非我能找到一种方法让我的VBA每小时点击一次这个按钮,我的整个模型都没用......哈哈!

我一直在阅读这样的任务可能是通过commandBars实现的,但是老实说我很难理解在线的例子。

非常感谢任何帮助。

谢谢,

1 个答案:

答案 0 :(得分:0)

你可以尝试这段代码。您可以运行一个调度程序,该调度程序将运行宏以在固定的时间间隔内启动您需要的宏。

Private Sub Workbook_Open()

Do While TimeValue(Now) < "23:59:59"
    ' Enter the name of the Macro that you want to run in the NAME OF MACRO field
     Application.OnTime TimeValue(Now), "NAME OF MACRO"

     newHour = Hour(Now())
     newMinute = Minute(Now()) + 10
     newSecond = Second(Now())
     waitTime = TimeSerial(newHour, newMinute, newSecond)
     'Waits for 10 minutes
     Application.Wait waitTime
Loop

End Sub

在Workbook Open Event中运行此宏。进入工作簿对象(ThisWorkbook)的专用模块的最快方法是右键单击“文件”旁边的Excel图标,然后选择“查看代码”。我安排了10分钟。您可以根据需要的频率进行更改。

但是这段代码有其局限性。您必须始终保持excel开放状态。此外,您将无法运行任何其他宏。如果需要全天运行,我建议您在专用系统中运行此excel,否则我们将根据您的具体要求更改代码。

希望这个解决方案可以帮到你!如果您需要进一步的帮助,请告诉我。