Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/10/2008, 00:41
Avatar de Taribo007
Taribo007
 
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 17 años, 7 meses
Puntos: 18
Respuesta: ¿Como se suma de campos de access 2003

Directamente en la tabla, o en una consulta, la verdad, no lo he probado, prueba esto, pero es para un form:

'*****************************************+
Saldo acumulado
05/10/04 Autor: marius
Esta función calcula el saldo acumulado en un Formulario continuo para cada registro.
Uso:
AWacumulado([FORMULARIO];"nombre_campo1";"nombre_campo2")
- [Formulario] debe escribirse tal como está, NO es el nombre del form)
- nombre_campo2 es opcional, si se incluye se restará del valor de nombre_campo1.

Ejemplos, en un cuadro de texto del Formulario:
=AWsaldo([Formulario];"IMPORTE")
=AWsaldo([Formulario];"DEBE";"HABER")

'* ******************************
'* Antes de usar la funcion, marcar en referencias:
'* Microsoft DAO 3.x
'* ******************************
Public Function AWsaldo(opObject, opFLD1, Optional opFLD2 = Null) As Currency
Dim rst As DAO.Recordset, valACUM As Currency, fld1, fld2
On Error GoTo ErrAWsaldo
Set rst = opObject.RecordsetClone
With rst
Set fld1 = .Fields(opFLD1)
If IsNull(opFLD2) Then
fld2 = 0
Else
Set fld2 = .Fields(opFLD2)
End If
.Bookmark = opObject.Bookmark
Do While Not .BOF()
valACUM = valACUM + fld1 - fld2
.MovePrevious
Loop
End With
Set fld1 = Nothing
Set fld2 = Nothing
Set rst = Nothing

ErrAWsaldo:
AWsaldo = valACUM

End Function

'*******************************************
Un saludo