Быстрая фильтрация данных в Excel с помощью FILTER

О чём эта статья
В этой статье вы найдёте понятное объяснение синтаксиса функции FILTER, практические примеры, советы по сочетанию с другими функциями, распространённые ошибки и рабочие решения для старых версий Excel. В конце — чек-листы для разных ролей и краткая методология для воспроизводимой фильтрации данных.
Что такое FILTER
FILTER — это функция для извлечения поднабора данных из заданного диапазона на основе одного или нескольких логических условий. Она возвращает динамический массив: результат автоматически расширяется на смежные ячейки.
Определения в одну строку:
- Динамический массив — набор значений, который Excel автоматически размещает в соседних ячейках.
- include — логическое выражение, которое указывает, какие строки или столбцы включать.
Синтаксис
=FILTER(array, include, [if_empty])- array — диапазон, который нужно фильтровать.
- include — логическое условие (или несколько условий), соответствующее массиву по размеру по первой размерности.
- if_empty — необязательный аргумент: что вернуть, если результатов нет.
Важно: FILTER возвращает ошибки, если include имеет несоответствующий размер или если функция недоступна в вашей версии Excel.
Базовые примеры
- Показать только женщин (пример с английскими данными):
=FILTER(A2:C10, C2:C10="Female")Этот пример предполагает, что в столбце C содержится текст “Female” для женщин. Если ваши данные на русском, замените “Female” на “Женский” или соответствующее значение.

- Показать товары с ценой меньше или равной $400:
=FILTER(A2:C10, C2:C10<=400)В этом примере столбец C содержит числовые значения цен. При локализации можно использовать местную валюту — формула остаётся числовой (замените 400 на нужную сумму).

Несколько условий: AND и OR
- Оператор AND: перемножение логических массивов (в Excel TRUE=1, FALSE=0).
- Оператор OR: сложение логических массивов и приведение к логике (>0).
Пример AND (категория “Tech” и цена >400):
=FILTER(A2:C10, (B2:B10="Tech")*(C2:C10>400))Знак * выступает как логическое И. Если нужно ИЛИ, используйте + и проверку >0:
=FILTER(A2:C10, ((B2:B10="Tech")+(B2:B10="Gadgets"))>0)
Совет: для нечувствительного к регистру поиска используйте ISNUMBER(SEARCH(…)), а для чувствительного — FIND.
Сочетание FILTER с другими функциями
Функцию FILTER часто используют как входной массив для других функций: SORT, UNIQUE, SUM, AVERAGE, MAX, MIN и пр.
Пример: отфильтровать товары “In Stock” и отсортировать по цене по возрастанию:
=SORT(FILTER(A2:C10, C2:C10="In Stock"), 2, TRUE)Где 2 — это номер столбца в возвращаемой табличке, по которому сортируем.
Другие сочетания и примеры:
- Сумма отфильтрованных значений:
=SUM(FILTER(C2:C100, A2:A100="ProductX")) - Среднее отфильтрованных значений:
=AVERAGE(FILTER(C2:C100, B2:B100="Region1")) - Максимум среди отфильтрованных:
=MAX(FILTER(C2:C100, D2:D100>0)) - Подсчёт строк по условию (без COUNTIFS):
=ROWS(FILTER(A2:A100, B2:B100="Active"))
Фильтрация по частичному совпадению текста
Чтобы найти строки, где столбец содержит подстроку (без учёта регистра):
=FILTER(A2:C100, ISNUMBER(SEARCH("key", B2:B100)))SEARCH возвращает позицию подстроки или ошибку; ISNUMBER превращает это в TRUE/FALSE.
Когда FILTER не подходит (примеры неудач) — и что делать
- У вас старая версия Excel (до Office 365/Excel 2021): функция FILTER отсутствует. Обходы: AutoFilter, Power Query, сводные таблицы или «матричные» формулы с INDEX/SMALL/IF.
- Диапазоны разного размера: include должен соответствовать по размеру первой размерности; иначе — #VALUE!.
- Фильтрация по нескольким неоднородным столбцам может требовать вспомогательных ключей или сложных логических выражений.
- Огромные таблицы: FILTER создаёт динамический массив в оперативной памяти; при миллионах строк лучше использовать Power Query или базу данных.
Альтернативные подходы
- AutoFilter (ленточная команда) — быстрый способ для ad-hoc-запросов и визуального анализа.
- Power Query — лучший инструмент для масштабируемой и повторяемой очистки и фильтрации данных; экспорт результатов обратно в лист.
- Сводные таблицы — агрегация и фильтрация большого набора данных с интерактивностью.
- Формулы массива (INDEX/SMALL/IF) — совместимость со старыми версиями Excel, но сложнее в настройке.
Советы по производительности и отладке
- Проверяйте типы данных: текст и числа в одной колонке могут приводить к неожиданным результатам при сравнении.
- Используйте явное приведение: VALUE для строк с числами, TEXT для форматирования дат.
- Включайте аргумент if_empty, чтобы избежать ошибок #CALC! и показывать понятное сообщение.
- Для большого количества вычислений рассмотрите Power Query или хранение данных в базе.
Критерии приёмки
- Фильтр возвращает только строки, соответствующие условиям.
- Результат обновляется при изменении исходных данных.
- При отсутствии строк показывается читабельное сообщение (if_empty) или пустой массив.
- Формула работает в целевой версии Excel у конечного пользователя.
Шаблоны и полезные сниппеты
Фильтрация по диапазону дат (включительно):
=FILTER(A2:D100, (B2:B100>=DATE(2023,1,1))*(B2:B100<=DATE(2023,12,31)))Фильтрация по нескольким текстовым колонкам (любой столбец содержит ключ):
=FILTER(A2:E100, (ISNUMBER(SEARCH("ключ",B2:B100))) + (ISNUMBER(SEARCH("ключ",C2:C100))) > 0)Отфильтровать уникальные значения после фильтрации:
=UNIQUE(FILTER(A2:C100, C2:C100>0))Возврат определённых столбцов после фильтрации (например, только столбцы 1 и 3):
=INDEX(FILTER(A2:C100, B2:B100="X"),, {1,3})Совместимость и миграция
- FILTER доступна в Microsoft 365 (Office 365), Excel 2021 и Excel для веб. Для Excel 2019 и старше функции динамического массива нет.
- Для пользователей старых версий: подготовьте альтернативный лист с Power Query или макросом, либо создайте формулы на основе INDEX/SMALL/IF.
- При совместной работе убедитесь, что получатели файла имеют совместимую версию Excel, иначе формулы будут неработоспособны.
Роли и чек-листы
Аналитик:
- Проверить корректность диапазонов array и include.
- Добавить if_empty с понятным сообщением.
- Тестировать на границах данных (пустые строки, нулевые значения).
Бухгалтер/финансист:
- Убедиться в числовых типах цен и валютах.
- Документировать допущения (валюта, налоговые включения).
Разработчик отчётов:
- Автоматизировать процесс обновления (Power Query/скрипт).
- Добавить проверку версии Excel у конечного пользователя.
QA / Тестировщик:
- Сценарии при вводе некорректных данных.
- Тесты на производительность для больших таблиц.
Примеры ошибок и как их исправить
- #CALC! — возможно, FILTER возвращает массив, который не помещается или конфликтует с существующими данными; удалите пересекающиеся ячейки и повторите.
- #VALUE! — include имеет неверную размерность или тип.
- Пустой результат — проверьте условие и используйте if_empty для понятного сообщения.
Быстрая методология (мини-SOP)
- Определите источник данных и диапазон (array).
- Сформулируйте критерии (include) и протестируйте их отдельно.
- Напишите формулу FILTER и укажите if_empty.
- При необходимости оберните SORT, UNIQUE или агрегаты.
- Документируйте версию Excel и добавьте альтернативу для старых версий.
Факты о поддержке и поведении
- FILTER возвращает динамический массив и автоматически «протекает» в соседние ячейки.
- Если результирующий диапазон пересекается с заполненными ячейками, появится ошибка #SPILL! (или #CALC! в старых локализациях).
- FILTER не меняет исходные данные; она создаёт представление.
Часто задаваемые вопросы
Почему формула возвращает пустой результат?
Проверьте условие include и типы данных столбца. Добавьте if_empty, чтобы показать сообщение о том, что результатов нет.
Как сделать поиск нечувствительным к регистру?
Используйте ISNUMBER(SEARCH(…)) вместо точного сравнения “=”.
Что делать, если у пользователя старая версия Excel?
Предложите Power Query, сводную таблицу или формулы INDEX/SMALL/IF в качестве альтернативы.
Заключение
Функция FILTER — удобный инструмент для быстрого создания динамических выборок в Excel. Она экономит время при анализе и легко комбинируется с SORT, UNIQUE и агрегатами. Для совместимости и масштабирования всегда имейте запасной план (Power Query или сводные таблицы). Для устойчивых рабочих процессов документируйте условия фильтра и версию Excel у получателей.
Важно: перед распространением отчёта проверьте, поддерживает ли целевая аудитория функции динамических массивов.

Краткое резюме:
- FILTER удобно использовать для динамических выборок.
- Для нескольких условий используйте * для AND и + для OR.
- При отсутствии поддержки функции используйте Power Query, AutoFilter или формулы массива.
Похожие материалы
Градиенты в Canva: добавить и настроить
Ошибка Disabled accounts can't be contacted в Instagram
Генерация случайных чисел в Google Sheets
Прокручиваемые скриншоты в Windows 11
Как установить корпусной вентилятор в ПК