Actualizar datos entre tablas Access 2010

Recurro a ustedes porque no se como hacer unos cambios en una base datos Access 2010.

Estoy haciendo un inventario de material informático. Tengo una tabla donde tengo todas los departamentos y que usuario esta en cada uno. Y luego tengo otra tabla donde esta todo el inventario. La cuestión es que los usuario se mueven y cambian de departamento y quería que al cambiar en la tabla de departamentos el usuario, automáticamente se me cambiara en el inventario general. Ejemplo:

Tabla usuario:

Departamento:1, dni usuario: 111111, nombre: pepito.

Este registro queda en la tabla de inventario. Pero si un dia se va "Pepito" y viene "Jaimito" quería que al cambiar el dato en la tabla de usuarios, automáticamente me cambiara en la tabla de Inventario general.

¿Se puede hacer? El cambio de usuario lo tengo echo para hacerlo desde un formulario.

2 respuestas

Respuesta
1

Puedes incluir en tu formulario los campos de las dos tablas y en uno de ellos, en el evento después de actualizar pones el siguiente código

Private Sub campo_1_AfterUpdate()
Me.campo_2.Value = campo_1
End Sub

Así cuando modifiques el campo 1 te pondrá lo mismo en el campo 2

Campo1 y 2 los puse como ejemplo de nombres de campos. Ahí pon los nombres de los tuyos.

Si ves que no te permite hacer modificaciones por que te da el error "No se puede actualizar este recordset" ve a las propiedades del formulario y en la pestaña datos, opción tipo Recordset pon: Dynaset (Actualizaciones incoherentes)

 Muchas gracias por la respuesta!! Lo he probado y parecía que funciona, pero es a medias. Me cambia solo 1 registro. Me explico:

Tengo a Pepito que tiene un ordenador y un monitor a su nombre. Al hacer el cambio que comentas, solo me cambia el nombre en un registro. El otro me lo deja igual. Creo que algo se me escapa pero no se el que.

Gracias de todas formas. sigo investigando.

Supuse erróneamente que se trataba de registros 1 a 1 en cada tabla. Para actualizar varios de una tabla respecto a uno de otra, en ese caso es mejor que continúes con la respuesta que te dio Icue sobre una consulta SQL. Hace demasiado que no toco SQL y lo tengo oxidadisimo.

Respuesta
1

Supongamos que en el formulario tienes un cuadro de texto Empleado donde está escrito Jaimito y quieres que te cambie ese nombre en todos los registros de la tabla Empleados por Pepito. Crea un botón de comando y en sus Propiedades-Eventos-Al hacer clic crea un procedimiento de evento y entre Private Sub y End sub escribe

DoCmd.RunSQL "update emplados set empleado = [escriba un nombre] where empleado=forms!nombredelformulario!empleado"

Así cuando estés en cualquier registro, y quieras cambiar el nombre que tengas en el cuadro de texto Empleado, pulsas el botón, te preguntará por quien quieres cambiarlo, lo escribes y te actualiza toda la tabla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas