=x*SERIESSUM(.95,1,1,{1,1,1,1,1})
Несмотря на то, что, возможно, существует готовая статистическая или финансовая функция для этого, вы, похоже, довольны результатами этой формулы, предложенной в другом ответе .
Вам просто нужно сгенерировать массив n раз с n , являющимся значением из ячейки на рабочем листе.
INDEX(ROW(1:4), , )
возвращает результат {1, 2, 3, 4}
какистинный массив.
Чтобы преобразовать {1, 2, 3, 4}
в {1, 1, 1, 1}
, используйте функцию-оболочку SIGN 'обертку' для чисел строк.
=INDEX(SIGN(ROW(1:4)), , ) 'returns {1, 1, 1, 1} as a true array
Чтобы изменить длину массива, используйте INDIRECT.построить ссылку ROW.С 4 в C10 это возвращает тот же результат.
=INDEX(SIGN(ROW(INDIRECT("1:"&C10))),,) 'returns {1, 1, 1, 1} as a true array
'proof
=SUM(INDEX(SIGN(ROW(INDIRECT("1:"&C10))),,)) 'returns 4
Поместите это вместе с остальной частью формулы как стандартную формулу с INDEX в режиме массива.
=B10*SERIESSUM(0.95, 1, 1, INDEX(SIGN(ROW(INDIRECT("1:"&C10))),,))
Если выне хотите использовать INDEX в режиме массива, вы можете отказаться от него и добавить вместо него оболочку ARRAYFORMULA.
введите описание изображения здесь