我正在运行Excel 2010,并且我有一个连接到MS Access 2010查询的表。我有一些VBA更新Access查询的SQL。然后,当我刷新Excel表时,返回指定日期范围的数据。
这通常很好用。但是,每月流程的一部分是每月将新工作簿另存为新名称的新文件夹。此时,我无法再刷新Excel表格。我收到以下错误:
运行时错误'1004':
查询未运行,或者无法打开数据库表。
检查数据库服务器或联系数据库管理员。确保外部数据库可用且尚未移动或重组,然后再次尝试操作。
如果我关闭所有Excel工作簿并返回相关工作簿,则刷新工作正常。
为了避免关闭和重新开放,我想确定并解决错误的真正原因。
我在本网站上阅读的一些修正案已被排除如下
背景刷新
它始终被设置为false
数据库权限
我非常有信心这不是问题,因为我的关闭和重新打开工作簿不会改变凭据,但我刷新Excel表的能力确实发生了变化。
如果有人对这里可能出现的问题有任何想法,我将非常感谢您的帮助。涉及VBA的解决方案也非常好。
麻烦的代码:
Sub RunQueries()
ActiveWorkbook.RefreshAll
End Sub
我会指出,我不相信这是一个VBA问题。即使我尝试在Excel中手动刷新表格,我也会收到错误。从MS Access中运行查询工作正常。