Alexis: Esta pregunta me sale sugerida y me cuesta descartar las que tienen ésta condición.
Ignoro tu facilidad para interpretar código y adjudicarlo en un campo de consulta.
Te voy a sugerir una solución que yo veo simple y que no es mía, sino de Sveinbjorn (mis saludos maestro), que está en éste foro en el siguiente enlace.
Calculo serie temporal en access
Verás que la función devuelve la diferencia entre dos valores consecutivos, y en tu caso solo tendrías que dividir esa diferencia por "PesoAnt" (en el ejemplo) y poner el campo como porcentaje.
He querido probar antes de enviarte ésta nota, con una suma de pedidos anuales por Cliente y el resultado queda así.
La consulta es >>
Y el código de Sveinbjorn modificado para mis pruebas >>
'Procedimiento: FncDiferencia >> Autor: Sveinbjorn para www.todoexpertos.com >> Fecha: 10/12/2015
'Descripción: Calcula la diferencia entre un valor y el mismo valor del registro anterior
'http://www.todoexpertos.com/preguntas/6j9sweowh66v53br/calculo-serie-temporal-en-access?selectedanswerid=6jamv8u3lqc4m8ci
'JTJ >> Modificada para otra pregunta en TodoExpertos
'https://www.todoexpertos.com/preguntas/95x3j8xg7tcn48q6/calcular-de-crecimiento-en-consulta-access?nid=9ou9rtugggoq9t6fgstplg4qh3w6bhks9ov69tkri4mmhw66grt6jvcpabr3&utm_source=todoexpertos&utm_medium=EmailNotification&utm_campaign=ExpertAnswer_SuggestionRequest
Public Function FncDiferencia(ElNombre As String, ElAño As Integer) As Double
Dim Rst As Recordset
Dim StrSQL As String
Dim SumCargosAñoAct As Double, SumCargosAñoAnt As Double
FncDiferencia = 0
StrSQL = "SELECT * FROM QryCargosClienteAñoSinFiltro WHERE IdCliente='" & ElNombre & "'" & " AND " & "Año<= " & ElAño & " ORDER BY Año ASC"
'Debug.Print StrSQL
Set Rst = CurrentDb.OpenRecordset(StrSQL, dbOpenDynaset)
'Si no devuelve valores
If Rst.RecordCount = 0 Then GoTo Salida
'Si es el primer registro
Rst.MoveLast
If Rst.AbsolutePosition = 0 Then GoTo Salida
'Si no
SumCargosAñoAct = Rst("SumCargos")
Rst.MovePrevious
SumCargosAñoAnt = Rst("SumCargos")
'Realizas el cálculo
FncDiferencia = (SumCargosAñoAct - SumCargosAñoAnt) / SumCargosAñoAnt
Salida:
Rst.Close
Set Rst = Nothing
End Function
Un saludo >>Jacinto