Sumar y/o contar registros desde formularios

Como puedo contar o sumar registros determinados en un formulario desde un cuadro de texto independiente, es decir lo puedo hacer por medio de consultas, pero como lo puedo hacer omitiendo estas y reitero, que me cuente o sume determinados registros desde un cuadro de texto del formulario.
Me explico, tengo estos campos CUENTA, RADIOS, REFERENCIA y los siguientes datos.
Cuenta radios referencia
2541 5 EN COBRO
2542 6 EN COBRO
2543 2 recuperada
Bueno, para contar cuantas cuentas tengo es fácil. =Cuenta([Cuenta]) me da 3 obvio, para sumar los radios totales también =Suma([Radios]) me da 13, ahora como puedo sumar de esta misma forma (NO CON CONSULTAS) solo los RADIOS que aparezcan en el campo de REFERENCIA como "RECUPERADA", y en otro cuadro de texto independiente me cuente solo las cuentas con REFERENCIA "EN COBRO" y en otro las que estén como "RECUPERADAS", ojala me haya podido explicar.

3 respuestas

Respuesta
1
Podrías crearte una función que te devuelta el total de radios que tienen una referencia determinada. Posteriormente pones el origen del control del cuadro de texto =miraTotalRadios("EN COBRO") y el otro =miraTotalRadios("RECUPERADA").
La función podría ser esta:
Function miraTotalRadios(ByVal referencia As Variant) as string
    Dim aux As Variant
    Dim txtWhere As String
    If IsNull(referencia) Then
        miraTotalRadios = ""
      Else
        txtWhere = "dia='" & referencia & "'"
        aux = DLookup("sum(radios)", "<nombreTabla>", txtWhere)
        miraTotalRadios = Nz(aux, "")
    End If
End Function
La función la puedes definir dentro del mismo formulario (en el diseño Herramientas - Macros - Editor de Visual Basic), o bien en un módulo si quieres que la función se use en otros sitios además del formulario.
Respuesta
1
Ahí va:
=SiInm([REFERENCIA]="EN COBRO";Suma([Radios]);0)
O bien:
=SiInm([REFERENCIA]="RECUPERADA";Suma([Radios]);0)
Y así sucesivamente.
A ver si te vale.
Gracias muy amable, lo probé pegándolo directamente al cuadro de texto del formulario y me marca un error de sintaxis, creo que es debido al ; no estoy seguro, crees que me puedas ayudar nuevamente a resolverlo, saludos y nuevamente gracias
Respuesta
1
Deberías usar una función para hacer esto que se contemple esta situación
supongamos que los datos anteriores están en una tabla rigen del formulario
para sumar
=dsum ("[nombredelcampo]", "nombre de tabla", "[referencia]='recuperada'")
para contar
=dcount ("[nombredelcampo]", "nombre de tabla", "[referencia]='en cobro'")
Esto lo pones en el origen de datos del cuadro independiente o creas una función desde visual basic
------------------------------------------------------------------------------------------------------------
Function sumaradio() as integer
sumaradio= dsum ("[nombredelcampo]", "nombre de tabla", "[referencia]='recuperada'")
end function
--------------------------------------------------------------------------------------------------
La función la pones en el formulario en el código del mismo y en el origen de datos del cuadro independiente pones =sumaradio()

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas