При переходе от Office 10 к 365 ProPlus у меня есть база данных MS Access, создающая файл Excel из шаблона. Access копирует вкладку шаблона, устанавливает запрос, обновляет ListObject на новом листе, оставляя лист шаблона ListObject пустым. Этот процесс повторяется несколько раз.
Как только 365 обновляет объект списка на новом листе и удаляет QueryTable, опция обновления на листе шаблона ListObject отключается. Я получаю сообщение «Ошибка времени выполнения 1004: ошибка приложения или объекта».
Если я перейду медленно, я могу обойтись без ошибок примерно в 20% случаев.
Public Sub RefreshData_Sheet(ByRef Sheet As String, Optional ByRef PreserveConnection As Boolean)
Dim objListObject
For Each objListObject In objExcel.Sheets(Sheet).ListObjects
If objListObject.SourceType = 0 Or objListObject.SourceType = 3 Then
objListObject.QueryTable.Refresh False
If Not PreserveConnection Then objListObject.QueryTable.Delete
End If
Next
End Sub