【发布时间】:2020-07-13 17:23:08
【问题描述】:
我写了一个makro,想在工作簿打开时直接运行。它可以工作,但是,宏在真正的电子表格完全打开之前启动,我只看到 Excel 在 makro 运行的整个过程中飞溅。
我应该提到我通过 Windows 任务计划程序打开工作簿。打开文件后,宏会循环并打开使用 SAP Analysis 插件更新外部数据的其他 Excel 文件的列表。
我将带有宏的电子表格作为计划任务调用以更新数据,然后再次自动关闭它:
Private Sub Workbook_Open()
If Range("start_on_open").value = "YES" Then
Call Process_action_table
End If
End Sub
start_open 是我工作表中的一个命名范围,当我将其设置为“YES”时,makro 将自动启动。
当函数“Process_action_table”运行时,我在电子表格中显示状态信息,但当然只有启动屏幕可见,实际上什么都没有显示。
当我“手动”运行宏时,一切正常。在我看来,好像没有足够的处理时间来正确打开电子表格。
我在开始时添加了以下代码,但无济于事:
t_end = Now + TimeValue("0:0:10")
Do While Now < t_end
DoEvents
Loop
任何建议将不胜感激。
【问题讨论】: