Я настроил электронную таблицу, чтобы сохранить баланс на разных счетах. Колонка O - сумма расходов. O242 - это расход для Colmn T. Таким образом, T242 на 170 меньше, чем T241.
То, что должно быть показано в строке 401 столбца Q, S, T, X и Y - текущий баланс каждого счета. Формула в строке 401 ищет последнее ненулевое значение в столбце. Итак, Q401 показывает Q245, S401 S240, T401 T244, Y401 Y243. Они выглядят хорошо, за исключением столбца X.
O246 - это расход для столбца X. Предыдущий остаток в столбце X равен 3000. После того, как 3000 потрачено, X246 равен 0, что является текущим балансом X. Поскольку формулаищет значение ПОСЛЕДНЕГО НУЛЯ, X246 игнорируется, а X401 отображает X225. Это не правильный результат. Он должен отображать 0.
Я могу вспомнить решение VBA, в котором переменная настроена для поддержания баланса каждого счета. Тем не менее, я ищу ответ не VBA. Возможно?
Формула в X401 такова:
=IF(SUM(INDIRECT("X5:X"&AGGREGATE(14,7,(ROW(X5:X400))/SUBTOTAL(2,OFFSET(X5,ROW(X5:X400)-ROW(X5),0)),1)))=0,0,LOOKUP(2,1/INDIRECT("X5:X" & AGGREGATE(14,7,(ROW(X5:X400))/SUBTOTAL(2,OFFSET(X5,ROW(X5:X400)-ROW(X5),0)),1) ),INDIRECT("X5:X" & AGGREGATE(14,7,(ROW(X5:X400))/SUBTOTAL(2,OFFSET(X5,ROW(X5:X400)-ROW(X5),0)),1) )))