Я написал цикл в Excel, чтобы собирать данные с помощью ключей отправки из сторонних приложений каждые пару секунд (работает хорошо) и сохранять их в нескольких xlsx
файлах, а также другой цикл в базе данных Access для чтения некоторых из этих файлов каждую пару секунд для обновления БД.
Проблема в том, что если я запусту эти макросы на одном ПК, то в какой-то момент (непредсказуемый, трудно воспроизводимый) в Excel VBA появится ошибка, связанная с
Set fso = VBA.CreateObject("Scripting.FileSystemObject")
....
Call fso.CopyFile(Pfad, Ziel, True)
По сути, Excel затем удаляет файл, который должен заменить, но не заменяет его.
Это также происходит, если fso.copyfile
абсолютно не связан с тем, что Access пытается прочитать.
- Поэтому я предполагаю, что это основная проблема методов, которые я использую в Access + Excel в сочетании.
Есть ли способ сделать чтение Access менее "инвазивным", чтобы его не беспокоило, если Excel в данный момент использует fso = VBA.CreateObject
?
Вот область Excel VBA, которая иногда приводит к ошибке
(Возможно, если Access делает что-то агрессивное в один и тот же момент)

Вот соответствующий код доступа:

В данный момент у меня нет кода ошибки, я добавлю его, как только это произойдет снова.