Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel应用程序,等等_Excel_Vba - Fatal编程技术网

Excel应用程序,等等

Excel应用程序,等等,excel,vba,Excel,Vba,假设我在Excel中有两个宏。一个用于刷新数据(通过查询数据库获取),一个用于发送电子邮件 现在,我有了Master宏,它看起来像这样: Call RefreshAll Application.Wait (Now + TimeValue("0:00:10")) Call SendMail 我只需要澄清一下我的解决方案,当我运行Master宏时,它是这样工作的:调用RefreshAll以便将数据从数据库加载到Excel,等待10秒钟以便查询有足够的时间加载所有数据,然后发送邮件 我问这个问

假设我在Excel中有两个宏。一个用于刷新数据(通过查询数据库获取),一个用于发送电子邮件

现在,我有了Master宏,它看起来像这样:

 Call RefreshAll
 Application.Wait (Now + TimeValue("0:00:10"))
 Call SendMail
我只需要澄清一下我的解决方案,当我运行Master宏时,它是这样工作的:调用RefreshAll以便将数据从数据库加载到Excel,等待10秒钟以便查询有足够的时间加载所有数据,然后发送邮件


我问这个问题的原因似乎是它不能正常工作(发送的是旧数据,而不是更新的数据)。
Application.Wait(现在+时间值(“0:00:10”)
是否也会导致查询暂停?如果是,我应该如何修改我的代码,使其按照我需要的解决方案工作?

如果您将数据库查询构建为excel数据表,并刷新该连接,刷新数据库连接应使excel自动等待数据刷新,然后才允许代码继续执行,因此不需要添加任何等待。此外,要读取开发人员参考,您应该能够简单地将连接属性更改为不在后台刷新。这样,您的代码将不会继续,直到查询刷新并且您可以消除尝试和错误方面为止。;)谢谢我将转到“DoEvents”并取消选中“EnableRefrsh Background”,然后查看。