Есть таблица с датой и кодом. Код может повторяться как в рамках одной даты так и в разных датах. Необходимо посчитать в сколько в каждой дате кодов, которые встречались ранее более 1 раза, но при этом, если код попадается в более позднюю дату, то в старых датах значение пересчитываться не должно. Повторения кода в рамках одного дня не считаем как повтор. Только если один и тот же код встречается в разных датах Пример в прикрепленном файле.
Vladimir Chebykin, Спасибо большое, почти то что нужно. По 15 числу должно получиться 2. Сейчас у Вас видимо захватывает код АГГГФЧШ-1/1304 который 2 раза встречается в 15 числе, но повторения в рамках одного дня не должны считаться, только если код встречался ранее в рамках другой даты
Dyroff, я пробегал мимо и заглянул на форум на 15 минут. К сожалению, сейчас не смогу поправить решение - только завтра... Пока, может, коллеги поправят мой вариант или свой предложат.
=COUNTX(
//создаем виртуальную сводную таблицу с группировкой полей дат и кодов
SUMMARIZE('Таблица1';
'Таблица1'[Дата];[Код];
"кол-во повторов";
//calculate в виртуальной сводной по каждой дате считает, сколько раз встречаются указанные коды в
//более ранних датах без учета текущей. Условие:'Таблица1'[Дата]<MAX('Таблица1'[Дата])
CALCULATE(COUNTROWS('Таблица1');
FILTER(ALL('Таблица1'[Дата]);
'Таблица1'[Дата]<MAX('Таблица1'[Дата]))
)
);
//далее countx просто считает сколько положительных значений получилось больше 0.
// Если использовать, например, SUMX, то это будет сумма повторений, а не частота (кол-во) повторений.
[кол-во повторов]
)
Пожалуйста, обращайтесь! Попробовал сделать через вычисляемые столбцы - вариант во вложении, хотя по мне такой вариант (который у меня получился) больше на костыль похож! И еще, когда я стал реализовывать второй вариант, по непонятной мне причине, перестал работать первый вариант с мерой и виртуальной таблицей! Какое-то абсурдное поведение Power Pivot, на мой взгляд. Если у Вас повторяется такая ошибка и Вы тоже не знаете ответ на нее, то я создам отдельную тему на базе этой. П.С. по поводу скорости вычислений: все зависит от объема исходных данных и объема выводимых строк в итоговую сводную. Например, при парочке миллионов строк исходных данных и при итоговом выводе 30-ти строк (1 месяц к примеру), торможения не должно быть замечено. При итоговых 1000-ах строк в сводной - да, будет заметно долгая обработка меры.
Dyroff, тут, как говорится, нужно искать баланс. Меры друг с другом сравнивать бессмысленно, потому что Summarize априори проиграет любой простой агрегации. Дело в том, что переводя сложные вычисления в вычисляемые столбцы, Вы грузите оперативную память, что приводит к долгой загрузке модели данных. Тут только на практике посмотреть как реагирует модель данных при двух вариантах: 1 - без вычисляемых столбцов, но со сложной мерой 2 - с простой мерой, но с вычисляемыми столбцами. Так же вычисляемые столбцы существенно увеличивают вес файла. При сильно нагруженных моделях данных гуру DAХ-а рекомендуют избавляться от вычисляемых столбцов, а вычисления переводить в меры. Dyroff, Вы когда тесты на реальной модели данных проведете, отпишитесь, в личку, пожалуйста, какой вариант для Вас оказался лучше?