Вы не можете использовать один объект подключения, а затем «надеяться», что доступ знает, какую таблицу использовать. Вы выполняете sql для одного объекта соединения, поэтому таблицы вставки и исходные файлы будут находиться в этом одном удаленном соединении. Вы не можете сделать это.
Что бы произошло, если бы исходная таблица существовала на стороне сервера sql?
Тем не менее, сбросьте все эти соединения с запросами. Просто свяжите таблицы с сервером.
Теперь вы можете писать и использовать стандартный sql из доступа и использовать обе таблицы, как если бы они были локальными.
Итак, вы можете пойти:
dim strSQL в виде строки
strSQL = "INSERT INTO [ReiseMasterLinked] " & _
"SELECT * FROM [ReiseMaster] WHERE NOT [Name of Employee] = '---------';"
currentdb.Execute strSQL
Таким образом, вы можете использовать sql для двух таблиц, даже если одна связана с сервером sql, но вы должны использовать связанные таблицы. Вы не имеете дела, не видите и не используете объект подключения, так как это всегда будет применяться к одному объекту подключения. Тем не менее, Access является ОЧЕНЬ особенным в том смысле, что вы можете написать sql, который включает в себя связанные таблицы и локальные таблицы - и он разрешит соединение, на котором основаны две таблицы (или фактически одна таблица не связана, является локальной, а другая - связанная таблица.
Редактировать
Вот еще один пример. Но ОБРАТИТЕ ВНИМАНИЕ, как я закомментировал команду .Execute и заменил ее на docmd.RunSQL.
Sub AppendTest()
Dim strSQL As String
strSQL = "INSERT INTO tblHotelsSQL " & _
"SELECT * FROM tblHotelsLOCAL WHERE NOT tblHotelsLOCAL.HotelName = '-----'"
'CurrentDb.Execute strSQL, dbFailOnError
DoCmd.RunSQL strSQL
End Sub
Это выполняется медленнее и оборачивает команду в транзакции - так что вы можете ответить да или нет на приглашение, но это дает НАМНОГО более подробное сообщение об ошибке относительно того, почему запрос не мог или не был выполнен. И снова обратите внимание, что строки подключения не требуются. Чтобы вышеприведенное сработало, можно сделать двойной двойной щелчок на связанной таблице с сервером SQL, чтобы убедиться, что связанная таблица работает нормально (и если она отображает данные - возможно, попробуйте отредактировать одну строку) - удалите ее, и это обеспечит связанная таблица предназначена для чтения / записи.