【问题标题】:VBA Excel Loop writs data; Access VBA Loop reads data - VBA.CreateObject ErrorVBA Excel循环写入数据;访问 VBA 循环读取数据 - VBA.CreateObject 错误
【发布时间】:2019-03-16 13:23:42
【问题描述】:

我在 Excel 中编写了一个循环,以每隔几秒钟通过来自 3rd 方应用程序的发送密钥收集数据(效果很好)并将它们保存在几个 xlsx 文件中,并在 Access DB 中编写另一个循环,以每隔几秒钟读取其中一些文件秒更新数据库。

问题是,如果我在一台 PC 上运行这些宏 - 在某些时候(不可预测,难以重现),我会在 Excel VBA 中遇到与

相关的错误
Set fso = VBA.CreateObject("Scripting.FileSystemObject")
....
Call fso.CopyFile(Pfad, Ziel, True)

基本上,Excel 会删除它应该替换的文件,但不会替换它。 如果 fso.copyfile 与 Access 尝试读取的那个完全无关,也会发生这种情况。 - 所以我想这是我在Access+Excel组合中使用的方法的一个基本问题。

有没有办法让 Access 读取更少“invasiv”,这样如果 Excel 正在使用 fso = VBA.CreateObject 就不会打扰?

这里是 Excel VBA 的区域,有时会导致错误 (假设如果 Access 在同一时刻做一些侵入性的事情)

这是相关的访问代码:

我暂时没有错误代码,一旦再次发生会添加。

【问题讨论】:

标签: excel vba loops ms-access simultaneous


【解决方案1】:

通过在访问端代码的循环中添加DoEvents,尝试给其他应用程序时间来完成他们的工作。

【讨论】:

  • 啊,听起来不错,...下周试试,...谢谢
  • 在 Access 中添加 doevents 遗憾的是没有工作(最后我几乎在所有地方都添加了 doevents,但没有任何效果) - 我不在工作 atm,下周末我将更改访问权限,所以首先创建文件的副本然后读取副本并希望能够解决问题(或至少减少潜在的问题)
  • 我还记得 Excel VBA 中的错误代码(运行时错误 70 ... 猜测是因为文件复制/粘贴方法以某种方式中断,因此没有文件)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-11-12
  • 1970-01-01
  • 1970-01-01
  • 2016-05-14
  • 1970-01-01
  • 1970-01-01
  • 2017-05-26
相关资源
最近更新 更多