繁体   English   中英

关闭Excel时启动宏

[英]Launch a macro when Excel is off

Tl:dr寻找未打开Excel时是否有任何方法可以启动Excel VBA宏。

长版:我有一个宏,可从一组特定的网站中获取数据,并相应地更新电子表格。 唯一的问题是数据会在不方便的时间进行更新,即星期一早上05:00(GMT)和星期四早上01.15(GMT)。

我需要的是一种Excel自我启动,收集数据,更新电子表格然后关闭的方法。 这可能吗?

如果我是你,我会这样:

首先,我需要安装第三方程序,并在需要时打开XLSM文件。

Excel打开电子表格后,您可以创建Sub Workbook_Open()例程以自动运行宏。 宏完成后可以关闭电子表格,然后退出Excel。

仍然更容易-不需要VB脚本。

运行WINDOWS TASK SCHEDULER,使用Excel作为应用程序设置作业。

在此处输入图片说明

您必须搜索Excel.exe-因为我的版本,我在这里找到它:

"C:\\Program Files (x86)\\Microsoft Office\\Office15\\EXCEL.EXE"

接下来,将参数作为完整路径提供给嵌入宏的Excel文件。 为了进行测试,我在桌面上调用了一个文件:

C:\\Users\\br12260\\Desktop\\TimeSeries.xls

然后只需确保您的工作Workbook_OpenThisWorkbook模块中具有Workbook_Open过程即可触发您的代码:

在此处输入图片说明

最好的方法是编写一个VB.net脚本来做到这一点。

最简单的方法是在夜间打开PC并遵循以下简单教程:

Public dTime As Date
Dim lNum As Long

Sub RunOnTime()
    dTime = Now + TimeSerial(0, 0, 10)
    Application.OnTime dTime, "RunOnTime"

    lNum = lNum + 1
    If lNum = 3 Then
        Run "CancelOnTime"
    Else
        MsgBox lNum
    End If

End Sub

Sub CancelOnTime()
    Application.OnTime dTime, "RunOnTime", , False
End Sub

另一种方法是使用Windows Scheduler,如本答案所述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM