В данной статье мы рассмотрим еще одну важную функцию, которая называется FILTER и используется в паре с функцией CALCULATE. Данная функция делает тоже самое, что и мы, когда пытаемся отфильтровать данные в таблице по значению в определенной колонке. То есть, другими словами, данная функция уменьшает размер таблицы с которой, в свою очередь, будет работать функция CALCULATE.
=FILTER(<таблица>, <фильтр>)
<таблица>
Таблица, которую мы хотим отфильтровать. Также, может быть выражение, которое возвращает таблицу как результат.
<фильтр>
Выражение сравнения, которое выполняется для каждой строки таблицы. Здесь указываются условия отбора значений.
Давайте рассмотрим как это выглядит на практике. Предположим мы имеет такую таблицу, которая называется Demo:
Нам нужно подсчитать количество записей товара Bikes (велосипеды) и вывести результат в сводную таблицу. Для этого запишем следующую формулу:
=CALCULATE(COUNTROWS(Demo);FILTER(Demo;Demo[Product]="Bikes"))
Как результат получим следующие значения в поле Count_All_Product:
Что сделала функция FILTER? Она уменьшила размеры таблицы, так как это мы делаем в Excel, установив фильтр в колонке Product и отфильтровав только записи со значениями Bikes:
Затем посчитала количество всех строк в уменьшенной таблице. Видим, что в других строках нет записей по полю Count_All_Product, поскольку в новой таблице отсутствуют коньки (Skates) и сноуборды (Snow Board).