Operaciones con access

Hola buenos dias angeles , tengo una duda con operaciones en access; tengo una consulta donde hay X campos; kiero hacer una resta pero depende de dos campos o dos criterios;
Consulta
Campo A AÑO Mes Consumo
     A 2001 Enero 10
     A 2001 Febrer 5
     A 2002 Abril 5
Mi pregunta es la siguiente: como puedo restar dos números [10-5] siempre que el campo B sea 2001 pero tener en cuenta que cada mes hay un valor diferente y mi intención es hacer una relación de consumo de cada mes. Aplico la fórmula SiInm pero no me hace dicha operación.
Aplico esta fórmula y no funciona:
Expr1: SiInm([Mes]="Febrero";[Consumo])-SiInm([Mes]="Enero";[Consumo])
Me serias de gran ayuda
Gracias

1 Respuesta

Respuesta
1
Lo que quieres no se puede hacer en una consulta, ya que en la consulta no se puede recorrer los registros de una tabla, se tiene que hacer mediante código. Tendríamos una tabla que llamamos Consumos con los campos Año, Mes, Consumo y ConsumoTotal. El campo Mes lo pondría como numérico para poder ordenar la tabla.
El código sería:
Function CalculoConsumo()
' Declaramos las variables
Dim db As Database
Dim rs As Recordset
Dim vConsumo As Double
' Activamos la BD
Set db = CurrentDb
' Abrimos el recordset
Set rs = db.OpenRecordset("Select * from Consumos order by Año, Mes")
' Empezamos el bucle
Do While Not rs.EOF
' Si estamos al principio del fichero
If rs.BOF Then
rs.Edit
rs!ConsumoTotal = rs!Consumo
rs.Update
vConsumo = rs!Consumo
rs.MoveNext
End If
' En los siguientes registros
rs.Edit
rs!ConsumoTotal = vConsumo + rs!Consumo
rs.Update
vConsumo = rs!ConsumoTotal
rs.MoveNext
Loop
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas