@PQDM . Another option:
let
Source = Table.FromRows(
{
{"Dec", null, null}, {"Jan", -0.0023, 0},
{"Feb", -0.0023, 0}, {"Mar", -0.0023, 7},
{"Apr", -0.0023, 0}
},
type table [A=text, B=number, C=number]
),
Index = Table.AddIndexColumn(Source, "Index", 0, 1),
Output = Table.AddColumn(Index, "Output", each
if [Index] = 0 then 100
else
Number.Round(
List.Accumulate(List.Skip(List.Range(Index[C], 0, [Index]+1)), 100,
(state,current)=> (state * -0.0023) + state + current
),
2
),
type number
),
RemovedIndex = Table.RemoveColumns(Output,{"Index"})
in
RemovedIndex