El problema que describe en Access ocurre porque al usar varias tablas en una consulta, el conjunto de resultados puede no ser editable. Esto es una limitación conocida en Access, y depende de cómo se estructure y configure la consulta.
Razones por las que una consulta no es editable
Uniones entre tablas: Si las tablas están relacionadas mediante uniones (JOIN), especialmente si utiliza OUTER JOIN o uniones complejas, Access no puede determinar qué tabla se debe actualizar.
Campos calculados: Si tiene campos calculados o expresiones derivadas de otras columnas, esos campos no son editables.
Claves principales y relaciones: Si la tabla principal no tiene una clave primaria o una relación adecuada con las tablas secundarias, Access no sabe cómo aplicar los cambios.
Propiedades de la consulta: Algunas propiedades de la consulta, como "Valores únicos" (SELECT DISTINCT), hacen que la consulta no sea editable.
Soluciones para permitir la edición
Verifique la clave principal en la tabla principal: Asegúrese de que la tabla principal (la que contiene los registros que desea editar) tenga una clave primaria correctamente configurada. Esto es esencial para que Access pueda identificar cada registro de manera única.
Use una consulta de actualización: Si solo necesita editar datos en la tabla principal, puede usar una consulta que no incluya directamente las tablas secundarias. Luego, use controles en el formulario (como cuadros combinados o subformularios) para mostrar los datos adicionales de las tablas relacionadas.
Configure un subformulario para las tablas secundarias: Si necesita mostrar datos de varias tablas, crea un subformulario vinculado para cada tabla secundaria. De esta manera, el formulario principal mostrará los datos de la tabla principal, y los subformularios mostrarán los datos relacionados de las otras tablas. Esto permite mantener la edición habilitada.
Evite campos calculados en la consulta: Si tiene expresiones calculadas, considera mover esas expresiones al formulario en lugar de incluirlas directamente en la consulta.
Pruebe cambiar la unión entre tablas: En la consulta, asegúraese de usar un INNER JOIN en lugar de un OUTER JOIN siempre que sea posible. Los INNER JOIN son más propensos a ser editables.
Le recomiendo no utilizar consultas para la edición, algo que no está permitido en bases de datos como PostgreSQL.