Вычисление остатков в кассе на начало дня с условием с помощью RangeSum(Above

Автор СветланаМ, 04 августа 2020, 06:58:27

« назад - далее »

СветланаМ

Задача: Вычисление остатков  в кассе  на начало дня
Начальные условия
Пользователь захотел на листе в поле ввода задавать на начало месяца остаток в кассе от которого ведется остальной расчет
Расчет делаем на листе, в таблице, формулами qlikview
Пользователь может задавать различные значения остатка на начала дня в кассе и веб-браузере должен пересчитываться автоматически столбик
Я реализовала это так
упрощенно
RangeSum(Above((f1+f2),1,RowNo())),все нормально
Задачу усложнили тем, что отрицательные остатки на конец дня не учитывать, а обнулять и от них брать последующий расчет. Пытаюсь просчитать рекурсивную формулу с условием
Если мне нужна только положительная сумма, а отриц обнулить, не работает
Пишу выражение в таблице:
if(RangeSum(Above((f1+f2),1,RowNo()))<0,0,RangeSum(Above((f1+f2),1,RowNo())))
Обнуляет, но в расчет берет предыдущие суммы с мин
Пыталась компенсировать fabs, тоже не учитывает....
Я не могу сделать в загрузке скриптом, так как у меня таблица работает с полями ввода
Первые значения мой пользователь задает в поле ввода и пересчитывает сумму
VBSCRIPT AND JAVASCRIPT не меняют выражения в столбике, можно сделать это только  при выгрузке в excel
Жду Ваши решения
Могу выслать в excel c формулами ожидаемый результат и получаемый


govorun

1. Остаток в кассе по определению не может быть отрицательным. Он (остаток) либо есть, либо его нет. Отсюда и должна строится логика вычислений.
2. Давайте больше информации: пример таблицы с данными, формулы, что получается и что хотите (нужно) получить.

Яндекс.Метрика