¿Cómo realizar un sumatorio automático?

Deseo que el total de filas de un subformulario se contabilice automáticamente en un cuadro de texto cuando se añada una nueva ya que ahora lo hago manualmente. ¿Es posible y cómo?

1 respuesta

Respuesta
2

Suponiendo que quieres la suma de un Campo concreto del Sub Formulario, en el pié del mismo inserta un cuadro de Texto.

En las Propiedades >> Origen del Control pones

= Suma(Nz([TuCampo];0))

Mis saludos >> Jacinto

Concretamente desearía que estuviera al encabezado del formulario principal. Lo he probado y no funciona. ¿Es posible? Gracias.

Saludos,

Jesús

He recibido un aviso que por alguna razón no sale aquí y en que citas.. desearía que estuviera...

Obra tal como te comento arriba y si no quieres que se vea la suma en el pie del Formulario, lo ocultas o le pones en Altura = 0

Voy a suponer que ese control del Pie del Formulario en el que haces la suma se llama SumPie

En la cabecera del Formulario Principal insertas un Cuadro de Texto que puedes llamar como quieras, pero para éste código le llamaré >> SumaSubForm

Te vas a la vista de diseño del "SubFormulario" >> Pestaña Eventos >> Al Activar Registro, pulsas los tres punto que hay a la derecha y se te deplega un Menú Emergente con tres líneas.

Eliges la última >> Generar código y te habrá escrito de forma automática

Private Sub Form_Current()

End Sub

Entre las dos lineas le escribes ésta :

Me.Parent.SumaSubForm = Me.SumPie

Lo he ido escribiendo sobre la marcha, por lo que si tienes alguna dificultad, afinamos un poco más. Mis saludos >> Jacinto

Perdona Jacinto pero no me he explicado suficientemente bien:

Tengo un formulario que incluye a varios subformularios. Desearía que en la cabecera del formulario principal me contara el total de filas utilizadas en el subformulario. Luego, también, que me sumara el total de todas las filas utilizadas de todos los subformularios. Ahora lo hago yo, pero manualmente. Gracias.

Perdona Jacinto pero no me he explicado suficientemente bien:

Tengo un formulario que incluye a varios subformularios. Desearía que en la cabecera del formulario principal me contara el total de filas utilizadas en el subformulario. Luego, también, que me sumara el total de todas las filas utilizadas de todos los subformularios. Ahora lo hago yo, pero manualmente. Gracias.

Voy a suponer que tienes tres Sub Formulario, y cuyos nombres para mi contestación voy a llamar como >> SbF1, SbF2 y SbF3.

En el Formulario Principal, pones un cuadro de Texto que yo voy a llamar SumLineasSubF

En el evento Form_Current (Al activar Registro), del Formulario Principal le pones éste código

Private Sub Form_Current()
Me.SumLineasSubF = Nz(Me.SbF1.Form.RecordsetClone.RecordCount,0) + Nz(Me.SbF2.Form.RecordsetClone.RecordCount,0) +Nz(Me.SbF3.Form.RecordsetClone.RecordCount,0)
End Sub

Lógicamente has de cambiar los nombres que te cito por los que tu tengas. Mis saludos >> Jacinto

Jacinto,

¡Perfecto! Me ha funcionado en dos subformularios, pero en el tercero no.

En dicho subformulario, concretamente, no me interesa que cuente las filas sino el sumatorio de un campo. En Access 2010 en la vista formulario ya aparece ese total ¿ es posible utilizarlo ? He intentado tu expresión:

Private Sub Form_Current()

Me.Parent.SumaSubForm = Me.SumPie

End Sub

pero no responde.

Y, también en las Propiedades >> Origen del Control 

= Suma(Nz([TuCampo];0))

pero en lugar de aparecer en el cuadro de texto me aparece al final de cada fila el mismo total.

¿Tiene solución? 

Gracias nuevamente por tu tiempo y tu tesón. Saludos.

Jesús

Me despista un poco la mezcla de conceptos, pero vamos a ver si acierto en lo que necesistas.

Si es mostrar un dato que está en el Pie de un Subformulario en un control del Formulario Principal, voy a improvisar el Nombre de ese Sub Formulario, llamandole>> SubF54, y el nombre del cuadro de Texto (del SubF54), donde está la información, le llamaremos TxtUnDato.

En el Formulario Principal, inserta un cuadro de Texto.

En el Origen de ese Control le pones:

=Formularios!SubF54.Formulario.TxtUnDato

Y cambiando los Nombres por los tuyos debería de mostrarte el dato que haya, sea Cuenta, suma, ... etc. Mis saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas