Work from inside out:
ROW(J$35)
gives: 35 (row number)
(ROW(J$35)+1-$AI20)
gives row number , adds one to it, then subtracts the value in cell AI20
ADDRESS((ROW(J$35)+1-$AI20),COLUMN(J$35),TRUE)
gives the address of the cell in column J
INDIRECT(ADDRESS((ROW(J$35)+1-$AI20),COLUMN(J$35),TRUE))
gives the value in the cell above
PRODUCT(INDIRECT(ADDRESS((ROW(J$35)+1-$AI20),COLUMN(J$35),TRUE)):J$35)
multiplies that value by the value in cell J35
PRODUCT(INDIRECT(ADDRESS((ROW(J$35)+1-$AI20),COLUMN(J$35),TRUE)):J$35)-1
subtracts 1 from that total.
So, for example if you have the following values in these cells:
J15: 2
AI20: 2
J35: 10
J34: 28
Your final answer would be 279.