Hacer cuentas entre dos subformularios

Tengo unformularia cabecera y dentro de este dos subformularios

Un subformularios están con formato "hoja de datos" y el otro como subformulario
esta como formulario único

En un subformulario tengo el campo numérico "cantidad"

En el otro subformulario tengo un capo numérico "cantidad prestada)
En este ultimo pongo por ejemplo -5 (cuando presto) y cuando me
regresan el producto porgo 5

Necesito poner un cuatro de texto en el formulario cabecera
que me haga esta cuenta

=Suma([cantidad])-([cantiad prestada])

Que cuando ponga el -5 me reste y cuando ponga 5 me lo vuelva a sumar

Osea en el subformulario con formato único esta el cuadro cantidad es fija
como ser 10

Y en el otro subofum es hoja de datos es el que varia

1 respuesta

Respuesta
1

Puedes hacer que la fórmula vaya referida a los campos de cada subform, pero no te aseguro que te funcione bien, porque uno de ellos está en forma de hoja de datos.

Yo lo que haría es usar la función DSum en el control del principal:

=DSum("Campo";"OrigenDatos";"CondicionDonde")

Es decir, suma los datos de Campo de la tabla o consulta OrigenDatos, en los registros que cumplan la condición CondicionDonde.

La sintaxis de CondicionDonde es lo que se complica un poco.

Para no liarte, casi que mejor que me digas de que va la condición y te ayudaré a redactarla, ya que depende de los tipos de datos de cada uno de los campos.

En el caso del otro subform, no debería haber problema en referirte al campo concreto. Es decir, finalmente quedaría como:

=DSum("Campo";"OrigenDatos";CondicionDonde")-SubForm2.Campo

Por cierto, si quieres que te realice la suma cada vez que marcas un registro del subform1 (el que está en forma de lista) puedes hacerlo como planteabas:

=SubForm1.Campo1-SubForm2.Campo2

Puedes elegir lo que más te convenga.

¡Gracias! ok mira me olvide la base en un pendrive el lunes pruebo y cualquier cosa te aviso desde ya muchas gracias

Hola tomas, te podría pasar el enlace de la base, anduve probando y no me sale, Si podes verla a ver que podes hacer

Gracias

Mi email es: [email protected]

Lo miraré cuando tenga un rato, voy un poco escaso de tiempo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas