ACCESS, VBA. Cambiar un dato de una BdD externa (¿Execute Update IN?)
Tengo dos bases de datos separadas, ambas con una tabla parecida pero con un mismo índice.
- La Tabla1 de la base de datos BdD1 es la de trabajo y contiene un índice por registro; en un proceso interno obtengo otra Tabla1b desglosada en la que su índice es un compuesto del índice de la Tabla1 y un número correlativo.
- La Tabla2 de la base de datos BdD2 es una "foto" de un momento concreto de la Tabla1b, por lo que entre otras cosas me permite hacer control de cambios, etc.
El problema lo tengo cuando en la Tabla1 cambio el índice que las relaciona; con la Tabla1b no hay problema puesto que están relacionados. El problema lo tengo con la Tabla2.
Para poder seguir teniendo los datos relacionados, necesito actualizar también el índice de la Tabla2 automáticamente y por varios motivos no me interesa tener permanentemente vinculada la Tabla2 en BdD1.
¿Habría alguna manera de actualizar el dato a través del AfterUpdate del índice o del registro? ¿Alguna otra recomendación?
Lo he intentado con el siguiente código pero no me deja al no ser actualizable la consulta;
strSQL = "SELECT * FROM Tabla2 IN 'C:\BdD2.accdb'" Set QDF = CurrentDb.CreateQueryDef("cns_Tabla2", strSQL) strSQL = "UPDATE cns_Tabla2" & _ " SET Tabla2_Indice = '" & nuevo & "'" & _ " WHERE Tabla2_Indice = '" & viejo & "'" DoCmd.SetWarnings False CDB.Execute strSQL DoCmd.SetWarnings True
1 Respuesta
Respuesta de Julián González Cabarcos
2