Suma acumulada

Estoy haciendo un formulario para control de certificaciones de obras. En él hay un subformulario que muestra las certificaciones que se van haciendo. El número de estas puede varias de una obra a otra. En dicho subformulario tengo dos cuadros de texto. En el cuadro de texto 1 (programa mensual) introduzco una cantidad en euros correspondiente a un pago y aquí viene mi duda:
-Necesito que en el cuadro de texto 2 (Programa acumulado) para la primera certificación me ponga lo que introduzco en el texto 1, pero para la segunda certificación me debe poner lo que introduzca en el texto 1 + el acumulado (texto 2 de la primera certificación)... Para la tercera certificación: el texto 1 que introduzca + el acumulado en el texto 2 de la 2ª certificación... Etc, etc.
Es decir, necesito que el texto 2 vaya sumando lo introducido en el texto 1 registro a registro.
El texto 1 se guarda en tabla, el texto 2 no.

1 Respuesta

Respuesta
1
Bueno creo que te entiendo bien pues trabajo en una promotora
en el formulario en diseño, en el cuadro de texto2 pinchas con el ratón encima cuando se ponga el cursor en el fondo blanco escribes =suma(pago) y en el cuadro de texto1 en propiedades, eventos, al salir, generador de código y en el código le pones
Private Sub total_Exit(Cancel As Integer)
Me.refresh
End Sub 
De esta manera se actualizara y te saldrá la cantidad sumada en el texto2
espero que te sirva
Muchas gracias Marbet63 por tu ayuda, porque la verdad es que estoy bastante atascado y ya debería de tenerlo.
Efectivamente, el código que me has pasado funciona, pero con un funcionamiento que no es del todo correcto. En el texto 2 ahora me suma el total de lo introducido en el texto 1 para todos los registros, pero me lo hace en todos y no es lo que busco. Me explico mediante una pequeña tabla que es lo que tendría que mostrar
Campo Texto 1 Texto 2
1er Reg 100 100
2º Reg 150 250
3º Reg 125 375
Lo que no te he comentado es que este subformulario va mostrando todos los registros que se van introduciendo, por lo que es necesario ver los parciales en el texto 2.
Con tu código me ponía en el campo 2 tanto en el primer, segundo y tercer registro 375.
Te agradecería que terminaras de ayudarme. Parece algo sencillo, pero no doy con ello y de código no ando muy sobrado.
Perdona que haya tardado tanto pero he tenido mucho trabajo
y de lo tuyo también me ha dado un poco de trabajo pero lo he conseguido
primero te hace falta una tabla la llamaremos "pagos_cert" que como mínimo debe tener estos campos "Id" ; "Pago" ; "fecha", el campo id intenta que no sea autonumérico, si valdría para esto pero para certificaciones como tengas que borrar una ya te queda ese numero de registro sin existir, bueno continuamos
después de la tabla te tienes que crear el formulario sera "formulario1" con los datos de la tabla y la vista en formulario continuo
creas un textbox y lo llamas suma y en su interior pinchas y escribes
=DSuma("[pago]";"pagos_cert";"[fecha]<=forms![formulario1]![fecha] and [id]=forms![formulario1]![id]")
Todo esto funcionara mejor si filtras el formulario antes, quiero decir que mediante un formulario anterior con un combo box elijas al cliente y al abrir el formulario1 solo se abran los registros de ese cliente
espero que te sirva a mi me ha funcionado
Hola de nuevo Experto. Mil gracias por la solución aportada. Lo había dejado medio apartado porque no daba con ello y casi olvidado, aunque pendiente sin remedio. Por fin lo he conseguido de la forma que me has pasado. No te puedes imaginar el peso que me has quitado. Una solución perfecta.
Muchas gracias de nuevo. Me has ayudado mucho.
Un saludo, José Luis

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas