Страницы: 1
RSS
счет кол-ва изменений по сравнению с пред. днем в массиве
 
Добрый день, уважаемые форумчане. Не могу по простому решить следующую задачу: есть данные по остаткам товаров по дням. Необходимо посчитать, сколько дней были изменения остатков в сторону уменьшения по сравнению с предыдущим днем. Подойдет любой способ из перечисленных: формулы, PQ, DAX.
Если будет иметь значение:
- календарь дней с остатками может быть прерывным: например, выходные.
- в дальнейшем новые дни с остатками будут добавляться
- нули не отображаются (пустое значение), но если это будет играть роль в вычислениях можно заменить на ноль.
- можно делать промежуточные вычисления, доп. столбцы
Заранее спасибо.
 
del
Изменено: buchlotnik - 23.08.2021 18:15:27
Соблюдение правил форума не освобождает от модераторского произвола
 
Привет, Михаил.
Опередил :) . Тоже чуть-чуть по другому.
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица3"]}[Content],
    getValue = (item) => if item = null then 0 else item,
    addStatColumn = Table.AddColumn(Source, "stat", (rec) =>
    let
        items = List.Range(Record.ToList(rec), 1),
        calc = List.Accumulate(items, [prev = getValue(items{0}), count = 0], (acc, item) =>
        let
            value = getValue(item)
        in
            [prev = value, count = acc[count] + (if value < acc[prev] then 1 else 0)]
        )
    in
        calc[count],
        Int64.Type
    )
in
    addStatColumn
 
buchlotnik, ухх, огонь!
Спасибо!
 
del
Изменено: buchlotnik - 23.08.2021 18:15:37
Соблюдение правил форума не освобождает от модераторского произвола
 
Андрей VG, Ваше сообщение позже увидел! Спасибо и Вам!
Эх, надо читать литературу...
 
=СУММПРОИЗВ(--((Таблица3[@[1 окт]:[13 окт]]-Таблица3[@[2 окт]:[14 окт]])>0))
или так
=СУММПРОИЗВ(--(Таблица3[@[1 окт]:[13 окт]]>Таблица3[@[2 окт]:[14 окт]]))
Изменено: Максим В. - 22.10.2020 11:39:56
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Максим В., благодарю!
Страницы: 1
Наверх