En nuestro anterior post hablamos de como hacer una suma continua en un informe. Ahora vamos a ver lo mismo pero en un formulario. Construiremos una paso a paso. Esto nos permite mostrar, registro a registro, el acumulado de una cantidad almacenada en un campo de tipo Número. Comencemos.
Tenemos una tabla con los siguientes registros:
Ahora, lo que nos interesa hacer es un formulario que nos diga la suma de las cantidades almacenadas en el campo cantidad desde el primer registro hasta el registro que estamos visualizando. Creamos un formulario que visualice los campos de nuestra tabla y vamos a vista diseño.
En la sección detalle, debajo de cantidad añadimos un cuadro de texto. En su etiqueta escribimos Cantidad acumulada. Vamos a modificar el nombre del cuadro de texto de ID. Abrimos las propiedades del cuadro de texto y escribimos en la propiedad Nombre IDf (identificador en el formulario):
Volvemos al cuadro de texto de Cantidad acumulada. Botón derecho, propiedades y nos dirigimos a la propiedad Origen del control donde escribiremos la siguiente expresión:
Volvemos al cuadro de texto de Cantidad acumulada. Botón derecho, propiedades y nos dirigimos a la propiedad Origen del control donde escribiremos la siguiente expresión:
=Dsuma([Cantidad];"Tabla1";"[ID]<=[IDf]")
Nos está indicando que sumemos los valores del campo cantidad de la tabla tabla1 pero sólo de aquellos registros en los que su id sea menor o igual al id (idf) del registro del formulario que estamos visualizando. Por ejemplo. la suma acumulada del campo cantidad en el tercer registro será:
Es decir, la suma de las cantidades de los registros 1, 2 y 3 es 23. Es lo que buscábamos, la suma continua en formularios.