Когда запрос является запросом объединения, вы
невозможно обновить данные в запросе.
http://support.microsoft.com/kb/328828
Когда Access объединяет строки из разных таблиц в запросе объединения, отдельные строки теряют свою базовую идентичность таблицы. Access не может знать, какую таблицу вы хотите обновить при попытке изменить строку в запросе объединения, поэтому он запрещает все обновления.
Следующий вопрос изменить :
Возможно, вы могли бы обойти это, используя VBA и ADO для обновления соответствующей таблицы. Для этого я хотел бы убедиться, что ваша объединенная таблица содержит столбец с идентификатором из исходной таблицы и другой столбец с именем исходной таблицы.
например. в вашем союзе у вас будет что-то вроде этого:
SELECT 'Table1', id, ... FROM Table1
UNION
SELECT 'Table2', id, ... FROM Table2
Затем с помощью формы ввода данных и VBA вы можете посмотреть значения выбранной в данный момент строки и обновить соответствующую таблицу.
РЕДАКТИРОВАТЬ 2: Для однодневных
Это вставляет значения в таблицу, используя Access VBA
Option Compare Database
Option Explicit
Public Sub InsertDataPunk(TargetTable As String, IdVal As Long, MyVal As String)
Dim conn As ADODB.Connection
Set conn = CurrentProject.Connection
Dim sql As String
'You could build something fancier here
sql = "INSERT INTO " & TargetTable & " VALUES (" & IdVal & ",'" & MyVal & "')"
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
Set cmd.ActiveConnection = conn
cmd.CommandText = sql
cmd.CommandType = adCmdText
cmd.Execute
End Sub
InsertDataPunk "Table2", 7, "DooDar"