Свой фильтр в Excel: как создать и настроить за 5 минут

Работа с большими массивами данных в Microsoft Excel часто превращается в головную боль, если не уметь эффективно их структурировать. Встроенные инструменты сортировки и автофильтрации решают часть задач, но что делать, когда нужно отобразить только те строки, где прибыль выше 100 000 руб., а регион продаж — «Сибирь» или «Дальний Восток»? Здесь на помощь приходит пользовательский фильтр — гибкий инструмент, который позволяет задавать сложные условия отбора данных.

В этой статье вы найдете не только пошаговые инструкции по созданию фильтров с одним или несколькими критериями, но и уникальные приемы работы с динамическими диапазонами, формулами в условиях фильтрации и обходом типичных ошибок, о которых не пишут в стандартных руководствах. Например, знали ли вы, что фильтр можно применить к данным, полученным через Power Query, или что условие «начинается с» работает иначе, чем «содержит»? Давайте разбираться.

Зачем нужен пользовательский фильтр в Excel

Базовый автофильтр (Главная → Сортировка и фильтр → Фильтр) позволяет быстро отсеять данные по одному критерию — например, показать только ячейки со значением «Да» в столбце «Оплачено». Но что, если вам нужно:

  • 📌 Отобразить клиентов, которые сделали заказы на сумму от 5 000 до 20 000 руб. и живут в Москве или Санкт-Петербурге?
  • 📌 Найти все строки, где даты поставки попадают в текущий квартал, но статус не равен «Выполнено»?
  • 📌 Исключить из отчета продукты с нулевым остатком на складе, но оставить те, где остаток не указан (пустые ячейки)?

Вот здесь и пригодится расширенный фильтр (или пользовательский фильтр), который умеет:

  • 🔹 Комбинировать условия через логические операторы И/ИЛИ.
  • 🔹 Фильтровать по нескольким столбцам одновременно.
  • 🔹 Использовать подстановочные знаки (*, ?) и регулярные выражения (в новых версиях Excel).
  • 🔹 Применять формулы в качестве критериев (например, =СЕГОДНЯ()-A2>30 для поиска просроченных задач).
📊 Как часто вы используете фильтры в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда не пользовался

Подготовка данных перед фильтрацией

Прежде чем настраивать фильтр, убедитесь, что ваша таблица соответствует двум ключевым требованиям:

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

Также рекомендуем:

  • 📊 Преобразовать диапазон в умную таблицу (Вставка → Таблица или Ctrl+T). Это автоматически добавит фильтры и упростит работу с данными.
  • 🔍 Проверить данные на наличие скрытых символов (пробелов, неразрывных пробелов, переносов строк). Они могут помешать корректной фильтрации. Для очистки используйте функцию =ПЕЧСИМВ(A1).
⚠️ Внимание: Если в столбце смешаны текстовые и числовые данные (например, «100» и «100 руб.»), Excel будет воспринимать их как разные типы. Используйте функцию =ТЕКСТ(A1; "0") для приведения к единому формату.

Создание простого пользовательского фильтра

Начнем с базового сценария: отфильтруем данные по одному критерию. Предположим, у нас есть таблица продаж с колонками Регион, Продукт и Сумма. Нам нужно показать только продажи из региона «Москва».

Шаг 1. Выделите любую ячейку в таблице и перейдите на вкладку Данные → Фильтр (или нажмите Ctrl+Shift+L). В заголовках столбцов появятся значки фильтра (▼).

Шаг 2. Нажмите на стрелочку в столбце Регион и выберите Текстовые фильтры → Равно... (или Числовые фильтры, если работаете с числами).

Шаг 3. В открывшемся окне:

  • В первом выпадающем списке выберите равно.
  • Во втором поле введите Москва.
  • Нажмите ОК.

Excel скрывает все строки, не соответствующие условию. Чтобы вернуть исходный вид, снова нажмите на фильтр и выберите Удалить фильтр.

Выделена вся таблица (включая заголовки)|

Заголовки столбцов уникальны и без объединений|

В данных нет скрытых символов (пробелов, переносов)|

Типы данных в столбце однородны (только текст или только числа)-->

Расширенный фильтр: несколько условий

Теперь усложним задачу: нужно отобразить продажи из Москвы или Санкт-Петербурга, где сумма заказа превышает 15 000 руб. Для этого используем расширенный фильтр с логическим оператором ИЛИ.

Шаг 1. Создайте диапазон критериев — отдельную область над или рядом с таблицей. Скопируйте туда заголовки столбцов, по которым будет фильтрация (в нашем случае — Регион и Сумма).

Шаг 2. Под заголовком Регион введите условия:

Москва

Санкт-Петербург

Это означает «Регион = Москва ИЛИ Регион = Санкт-Петербург».

Шаг 3. Под заголовком Сумма введите:

>15000

Это добавляет условие «И Сумма > 15 000».

Шаг 4. Перейдите на вкладку Данные → Сортировка и фильтр → Дополнительно. В открывшемся окне:

  • Укажите исходный диапазон (вся таблица с заголовками).
  • Укажите диапазон критериев (ячейки с заголовками и условиями).
  • Выберите Фильтровать список на месте.
  • Нажмите ОК.

Excel отобразит только те строки, которые соответствуют всем заданным условиям.

Логический оператор Пример записи Интерпретация
И
Регион   Сумма

Москва >15000

Регион = Москва И Сумма > 15 000
ИЛИ
Регион

Москва

Санкт-Петербург

Регион = Москва ИЛИ Регион = Санкт-Петербург
НЕ
Регион
<>Москва
Регион НЕ РАВНО Москве
⚠️ Внимание: Если в диапазоне критериев указать два столбца с одинаковыми заголовками (например, дважды Регион), Excel воспримет это как условие И. Чтобы задать ИЛИ для одного столбца, условия нужно записывать в одну колонку подряд.

Фильтрация по датам и формулам

Фильтры в Excel умеют работать не только со статическими значениями, но и с динамическими критериями — например, датами или результатами формул. Рассмотрим два полезных сценария.

Сценарий 1: Фильтр по текущему месяцу

Допустим, у вас есть столбец Дата продажи, и нужно показать только записи за текущий месяц.

Решение:

  1. Создайте диапазон критериев с заголовком Дата продажи.
  2. В ячейке под заголовком введите формулу:
    =ИМЕСЯЦ(A2)=ИМЕСЯЦ(СЕГОДНЯ())

    где A2 — первая ячейка столбца с датами.

  3. Примените расширенный фильтр, указав в качестве диапазона критериев только ячейку с формулой (без заголовка!).

Сценарий 2: Поиск просроченных задач

Если в таблице есть столбец Срок выполнения, можно автоматически выделять задачи, у которых истек дедлайн:

=A2<СЕГОДНЯ()

Где A2 — ячейка с датой дедлайна.

Как фильтровать по дню недели?

Чтобы отобразить продажи, совершенные по понедельникам, используйте формулу:

=ДЕНЬНЕД(A2;2)=1

Где 2 — тип возвращаемого значения (1=воскресенье, 7=суббота), а 1 — понедельник.

Типичные ошибки и как их избежать

Даже опытные пользователи Excel иногда сталкиваются с проблемами при фильтрации. Вот самые распространенные ошибки и способы их решения:

  • 🚫 Фильтр не применяется:
    • Проверьте, включен ли режим фильтрации (Данные → Фильтр).
    • Убедитесь, что в диапазоне критериев нет пустых строк между заголовком и условием.
  • 🚫 Некорректные результаты:
    • Если используете формулы в критериях, убедитесь, что они возвращают ИСТИНА/ЛОЖЬ.
    • Для текстовых данных регистр имеет значение: «Москва» ≠ «москва». Используйте =ПРОПИСН(A1) для приведения к единому регистру.
  • 🚫 Фильтр игнорирует пустые ячейки:
    • Чтобы включить пустые ячейки, в критериях укажите ="" (две кавычки без пробела).
    • Чтобы исключить пустые ячейки: <>"".

Еще одна частая проблема — несоответствие типов данных. Например, если в столбце с числами есть текст (например, «Н/Д»), Excel может пропустить такие строки при числовой фильтрации. Решение:

=ЕЧИСЛО(A1)

Эта формула вернет ИСТИНА только для ячеек, содержащих числа.

Продвинутые приемы: динамические диапазоны и Power Query

Если вам регулярно приходится фильтровать одни и те же данные по разным критериям, стоит автоматизировать процесс. Вот два способа:

Способ 1: Именованные диапазоны

Создайте именованный диапазон для критериев:

  1. Выделите ячейки с заголовками и условиями.
  2. Перейдите на вкладку Формулы → Присвоить имя.
  3. Задайте имя (например, Критерий_Регион) и нажмите ОК.

Теперь в расширенном фильтре можно ссылаться на имя вместо адреса ячеек.

Способ 2: Фильтрация в Power Query

Power Query (доступен в Excel 2016+) позволяет создавать сложные фильтры с сохранением шагов:

  1. Выделите таблицу и нажмите Данные → Из таблицы/диапазона (или Power Query → Из таблицы).
  2. В редакторе Power Query нажмите на стрелочку в заголовке столбца и выберите нужные критерии.
  3. Нажмите Закрыть и загрузить — отфильтрованные данные появятся на новом листе.

Преимущество Power Query: фильтры сохраняются и автоматически применяются при обновлении данных (Данные → Обновить все).

FAQ: Ответы на частые вопросы

Можно ли сохранить настройки фильтра для повторного использования?

Да! Для этого:

  1. Настройте фильтр так, как вам нужно.
  2. Скопируйте весь лист (Ctrl+A → Ctrl+C) и вставьте на новый лист (Ctrl+N → Ctrl+V).
  3. Сохраните файл как шаблон (Файл → Сохранить как → Шаблон Excel (*.xltx)).

При следующем открытии шаблона фильтры будут уже настроены.

Как отфильтровать данные по цвету ячейки?

Для фильтрации по цвету:

  1. Примените условное форматирование к данным (например, покрасьте ячейки с суммой > 20 000 в красный).
  2. Нажмите на стрелочку фильтра в заголовке столбца.
  3. Выберите Фильтр по цвету → Цвет заливки и укажите нужный цвет.

Это работает только для ручного или условного форматирования, но не для цветов, заданных формулами.

Почему фильтр не находит текст с регистром?

Excel по умолчанию учитывает регистр при текстовых сравнениях. Чтобы игнорировать регистр, используйте формулу в критериях:

=НАЙТИ(СТРОЧН("москва"); СТРОЧН(A1))>0

Эта формула вернет ИСТИНА для любых вариантов написания («Москва», «МОСКВА», «москва»).

Как фильтровать данные в сводной таблице?

Сводные таблицы имеют собственный механизм фильтрации:

  1. Щелкните по стрелочке в заголовке строки или столбца.
  2. Выберите нужные элементы или используйте Фильтры по меткам/Фильтры по значениям.
  3. Для сложных условий используйте Срезы (Анализ → Вставить срез).

Фильтры в сводных таблицах не конфликтуют с обычными фильтрами на листе.

Можно ли применить фильтр к данным на другом листе?

Да, но с ограничениями:

  • Для расширенного фильтра диапазон критериев может находиться на другом листе, но исходные данные — нет.
  • Решение: используйте Power Query для объединения данных с разных листов перед фильтрацией.