Función Dsuma con 2 criterios y de ellos fecha

Tengo una base de datos de facturas donde tengo un formulario llamado facturas que esta basado en una tabla también llamada facturas y necesito hacer la suma en un campo de texto del campo "PtePago" que coincida con dos criterios, uno dependiendo de la entidad que seleccione en un cuadro de lista desplegable que se llama "BancoC" y el segundo criterio debe ser todos aquellos registros que en el campo "Domiciliado" contenga una fecha que sea ">=Fecha()", esta misma operación debo repetirla para la suma de los campos "Pagare" y "Confirming" independientemente, para aclarar un poco lo explicado adjunto una foto del formulario

La formula que yo he puesto es la siguiente, pero como ven me da error, por favor me podéis ayudar, muchas gracias.

Para Domiciliados:

=DSuma("PtePago";"Facturas";"Entidad= forms!facturas!BancoC  and Domicliado >=Fecha()")

Para Pagare:

=DSuma("PtePago";"Facturas";"Entidad= forms!facturas!BancoC  and Pagare>=Fecha()")

Para Confirming:

=DSuma("PtePago";"Facturas";"Entidad= forms!facturas!BancoC  and Confirming>=Fecha()")

1 respuesta

Respuesta
2

No sé como se llama el combinado donde eliges el banco, ni la columna dependiente. Vamos a suponer que el combinado se llama Elegir Banco, que tiene una sóla columna donde aparece el nombre del banco. Por otro lado tampoco sé como se llama el cuadro de texto que está al pié de Domiciliado, pero vamos a suponer que se llama ResumenDom(deja su origen de control en blanco).

En el evento Después de actualizar del combinado ElegirBanco, crea un procedimiento de evento y entre Private Sub y End Sub escribe

resumendom=Dsum("PtePago","facturas","banco='" & me.elegirbanco & "' and Domiciliado<=Date()")

resumenpagare=Dsum(".....

Como siempre perfecto Icue y si no es pedir mucho, es posible que cuando no elijamos ningún banco en el combinado me muestre los totales tanto de Domiciliado como Pagare y Confirming aunque la suma de alguno de ellos sea valor nulo, muchas gracias.

perdona el evento que me enviaste funciona perfectamente y es el siguiente:

ResumenDO = DSum("PtePago", "Facturas", "Entidad='" & Me.BANCOC & "' and Domiciliado<=Date()")
ResumenPA = DSum("PtePago", "Facturas", "Entidad='" & Me.BANCOC & "' and Pagare<=Date()")
ResumenCO = DSum("PtePago", "Facturas", "Entidad='" & Me.BANCOC & "' and Confirming<=Date()")

. Al no saber como trabajas, podrías poner el el evento Al cargar, o en el evento Al abrir, ambos de el formulario,

resumendomi=dsum("nz([ptepago]),"Facturas","domiciliado<=Date()")

Los otros igual

Laa función nz (NullZero) transforma los nulos en ceros para que puedas sumar los registros.

Esta función tambien te permite transformar los nulos en lo que quieras, por ejemplo

TextoX=nz([ptepago],"Hola") te transforma los nulos en Hola

TextoX=nz([ptepago],3) te transforma los nulos en valor 3

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas