Sumar en pie de subformulario continuo.

Tengo un subformulario continuo con dos campos [fecha realizada] y [nº horas].

Las fechas se corresponden con varios años años, 2014 y 2015.

Totalizar la suma de horas en el pie del formulario ya lo tengo empleando Suma([nº horas]).

Lo que necesito es totalizar la suma de horas en el pie del formulario para el año 2014 y 2015 por separado.

1 respuesta

Respuesta
1

En el pie del formulario crea dos cuadros de texto y llámalos por ejemplo Año1 y Año2.

En las propiedades del formulario-Eventos-Al activar registro, crea un procedimiento de evento y entre Private Sub y End sub escribe

año1=dsum("nº horas","tabla o consulta origen","year([fecha realizada])=2014")

Año2= lo mismo pero 2015

Gracias por tu respuesta. Perdona mi tardanza en responderte pero me encontraba ausente de mi domicilio.

Tu solución no me soluciona el problema quizá porque no te he dado todos los parámetros:

  • Por un lado tu solución me suma todas las horas realizadas en el año "2015" de la consulta "CSFbolsa de horas".
  • Pero esta consulta tiene un campo más que es "NBI", que es la identificación de la persona que hace las horas.
  • Lo que necesito es que la suma en el pie del subformulario me sume las horas realizadas por "año" y por "NBI".

Agradezco tu atención. Gracias

Si el NBI está en el subformulario debes poner

año1=dsum("nº horas","tabla o consulta origen","year([fecha realizada])=2014 and nbi=forms!nombreformulario!nombresubformulario.form!nbi")

En el caso de que NBI sólo esté en el formulario

año1=dsum("nº horas","tabla o consulta origen","year([fecha realizada])=2014 and nbi=forms!nombreformulario!nbi")

O sea le estás poniendo como criterios, que el año sea... y que el valor de NBI sea, obien el que está en el formulario, o el que está en el subformulario.

Si me permites un consejo, no llames a las tablas, consultas, etc con nombres separados. A la hora de programas en VB, si le pones el nombre todo junto no necesitas preocuparte. Si lo pones separado tienes que estar pendiente de ponerlo entre corchetes.

De nuevo agradezco tu atención y siento decirte que no he sido capaz de hacerlo funcionar, pero soy consciente que es por el desconocimiento que tengo de VB.

Por adelantado que te voy a votar muy positivamente y por si que quisieras darle una vuelta más y ponérmelo que lo entienda un inexperto te doy datos:

  • [FDesarrolo ERTE] es el nombre del formulario. Contiene visible el campo [NBI]
  • [SFBolsa de horas] es el nombre del subformulario. No se visible el campo [NBI] aunque si lo contiene en la consulta [CSFbolsa de horas] que es de donde toma los datos.
  • [CSFbolsa de horas] es la consulta de donde toma los datos el subformulario. Consta de 3 campos [NBI], [Nº HORAS], [FECHA REALIZADA].

Me reitero en el agradecimiento.

Te sería posible mandarme una copia sin registros de las tablas, el formulario y subformulario a [email protected].

Es para tenerlo claro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas