Operaciones entre registros en access

Quisiera que me expliques como puedo hacer operaciones entre dos registros de una misma tabla y de un mismo campo de access. Por ejemplo sumar el registro 5 con el registro 7 del campo "ventas" de la tabla "Registro". Si es que existe alguna forma de hacerlo sin usar comandos complejos de visual basic por favor enviame una respuesta, y si no hay otra forma que ocn visual basic también te agradecería que me puedas guiar con un ejemplo o algo =)

1 respuesta

Respuesta
1
Te voy a poner un ejemplo concreto comentado hecho programando con el Visual Basic de access. Supondré que tengo una tabla llamada Tabla con un campo llamado Valor. Supondré que la clave de la Tabla se llama DNI y que quiero sumar el dinero (Valor) que tienen Juan (DNI=11111111) y Pepe(DNI = 22222222), y dárselo todo a Pedro(33333333).
Dim Base as DataBase
Dim ApuntadorJuan as Recordset
Dim ApuntadorPepe as Recordset
Dim ApuntadorPedro as Recordset
Set Base = currentDB
Set ApuntadorJuan = Base.OpenRecordset("Select * from Tabla where DNI = 11111111")
Set ApuntadorPepe = Base.OpenRecordset("Select * from Tabla where DNI = 22222222")
Set ApuntadorPedro =
Base.OpenRecordset("Select * from Tabla where DNI = 33333333")
ApuntadorPedro.edit
ApuntadorPedro!valor = ApuntadorPedro!Valor + ApuntadorJuan!Valor + ApuntadorPepe!Valor
ApuntadorPedro.Update
Notas:
He sumado lo que tienen Juan y Pepe y lo he añadido a lo que tiene Pedro. Te dejo que pienses como seria para solamente dar a Juan lo que tiene Pepe, o para repartir lo que tiene Juan entre Pedro y Pepe.
Me he guiado por DNI, no por posición en la tabla como tu decías. Tus tablas SIEMPRE deben tener clave, no te acostumbres a pensar así "el registro 5 más el 7". Eso te llevara inevitablemente a errores. Podría hacerse, el código queda mucho más confuso. Seria algo así
...
Set ApuntadorJuan = Base.OpenRecordset("Tabla")
Set ApuntadorPepe = Base.OpenRecordset("Tabla")
Set ApuntadorPedro = Base.OpenRecordset("Tabla")
ApuntadorJuan.move 5
ApuntadorPepe.move 7
ApuntadorPedro.move 34
...
Pero insisto en que no es la forma buena de trabajar con Bases de datos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas