Как в Excel сделать фильтрацию данных: 5 способов с примерами

Если в вашей таблице Excel сотни строк, а нужно быстро найти только продажи за последний месяц, клиентов из Москвы или ячейки с красным фоном — без фильтрации не обойтись. Автофильтр включается за 2 клика, но 80% пользователей используют лишь 20% его возможностей. Например, мало кто знает, что через фильтр можно искать данные по частичному совпадению текста (например, все email с доменом @gmail.com) или комбинировать условия с логическим «ИЛИ».

В этой статье разберём не только базовые настройки фильтра, но и продвинутые приёмы: как отфильтровать данные по нескольким критериям одновременно, сохранить результаты фильтрации в новую таблицу или использовать расширенный фильтр для сложных запросов. Отдельно остановимся на типичных ошибках — например, почему фильтр suddenly перестаёт работать после добавления новых строк или как исправить ситуацию, когда в выпадающем списке фильтра отображаются не все значения.

1. Базовый автофильтр: как включить и использовать

Автофильтр — самый простой способ отсеять ненужные данные. Он добавляет выпадающие списки к заголовкам столбцов, через которые можно выбрать критерии отбора. Чтобы его активировать:

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

В меню фильтра доступны опции:

  • 📋 Сортировка (по возрастанию/убыванию, цвету ячейки или шрифта).
  • 🔎 Текстовые фильтры (содержит, не содержит, начинается с, заканчивается на).
  • 📊 Числовые фильтры (больше, меньше, топ-10, выше среднего).
  • 🎨 Фильтр по цвету (если ячейки закрашены условным форматированием).
⚠️ Внимание: Если после включения фильтра стрелки ▼ не появились, проверьте:
  1. Выделили ли вы ячейку внутри таблицы (а не рядом с ней).
  2. Нет ли в данных пустых строк или объединённых ячеек в заголовках — они могут сбивать автоопределение диапазона.

Пример: чтобы отобразить только товары категории «Электроника» с ценой выше 5000 рублей, сначала отфильтруйте столбец Категория по тексту «Электроника», затем столбец Цена по условию «больше 5000». Фильтры применяются последовательно, сужая выборку.

2. Расширенный фильтр: сложные условия и динамические диапазоны

Автофильтр ограничен логикой «И» (все условия должны выполняться одновременно). Расширенный фильтр позволяет:

  • 🔄 Использовать логику «ИЛИ» (например, показать данные за январь или февраль).
  • 📥 Копировать отфильтрованные данные в другое место листа.
  • 🔢 Работать с динамическими диапазонами (например, фильтровать только видимые строки после скрытия части данных).

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

  1. Создайте диапазон условий — отдельную таблицу с заголовками, повторяющими имена столбцов исходных данных. Например, если фильтруете по столбцам «Город» и «Дата», диапазон условий должен содержать эти же заголовки.
  2. Под заголовками укажите критерии. Для логики «ИЛИ» условия пишутся в разных строках:
    
    

    Город Дата

    Москва >01.01.2026

    СПб >01.01.2026

  3. Выделите исходные данные (включая заголовки), затем перейдите в ДанныеРасширенный фильтр.
  4. В поле Исходный диапазон укажите адрес вашей таблицы, в Диапазон условий — адрес созданной таблицы с критериями.
  5. Отметьте Скопировать результат в другое место, если нужно сохранить отфильтрованные данные отдельно.
ЛогикаПример условийРезультат
ИГород ="Москва"
Дата > 01.01.2026
Только строки, где оба условия выполнены.
ИЛИГород ="Москва"
Город ="СПб"
(в разных строках)
Строки, где выполнено любое из условий.
Текст + числоКатегория ="Одежда"
Цена > 1000
Одежда дороже 1000 рублей.
📊 Как часто вы используете расширенный фильтр в Excel?
Никогда не пробовал
Редко, только для сложных задач
Часто, это мой основной инструмент
Предпочитаю Power Query

3. Фильтрация по цвету, значкам и условному форматированию

Если в таблице применено условное форматирование (например, красный фон для просроченных задач или зелёные стрелки для роста продаж), фильтр может работать с этими визуальными метками. Как это сделать:

  • 🎨 Фильтр по цвету ячейки: откройте выпадающий список фильтра → Фильтр по цвету → выберите нужный цвет.
  • 🖌️ Фильтр по цвету шрифта: аналогично, но в меню Фильтр по цвету шрифта.
  • 📊 Фильтр по значкам (если использованы наборы иконок): Фильтр по значку ячейки → выберите нужный значок.

Пример: в таблице с задачами просроченные помечены красным фоном. Чтобы увидеть только их:

  1. Кликните по стрелке ▼ в столбце Статус.
  2. Выберите Фильтр по цветуКрасный (или другой используемый цвет).
⚠️ Внимание: Фильтр по цвету работает только если цвет применён через условное форматирование или вручную. Если цвет ячейки задан через стиль таблицы (например, чередующиеся строки), фильтр его «не увидит».

Также можно комбинировать фильтр по цвету с другими критериями. Например, показать только просроченные задачи (красный фон) с приоритетом «Высокий» (текст в столбце «Приоритет» равен «Высокий»).

4. Фильтр по датам: периоды, кварталы, динамические диапазоны

Фильтрация дат в Excel поддерживает не только точные совпадения, но и динамические периоды: «за последний месяц», «в этом квартале», «за прошедшую неделю». Как настроить:

  • 📅 Фильтр по дате: кликните по стрелке ▼ в столбце с датами → Фильтры по дате.
  • 🔄 Динамические периоды: выберите Завтра, На следующей неделе, В этом месяце и т.д. Excel автоматически подставит текущую дату.
  • 📊 Пользовательский фильтр: для сложных условий (например, «между 01.01.2026 и 31.03.2026»).

Пример: чтобы отобразить продажи за текущий квартал:

  1. Кликните по стрелке ▼ в столбце Дата.
  2. Выберите Фильтры по датеВ этом квартале.

Для фильтрации по недельным диапазонам (например, «понедельник–пятница») используйте пользовательский фильтр с условиями:


Дата больше или равно =ДАТА(2026;5;6) // понедельник текущей недели

Дата меньше или равно =ДАТА(2026;5;10) // пятница текущей недели

Как автоматизировать фильтр по"прошедшей неделе"

Используйте формулы для динамического расчёта дат:

  • Начало прошедшей недели: =СЕГОДНЯ-НЕДЕЛЯ(СЕГОДНЯ;3)-6
  • Конец прошедшей недели: =СЕГОДНЯ-НЕДЕЛЯ(СЕГОДНЯ;3)

Скопируйте эти формулы в ячейки диапазона условий для расширенного фильтра.

5. Типичные ошибки и как их исправить

Фильтр в Excel может работать некорректно по нескольким причинам. Вот самые распространённые проблемы и их решения:

ПроблемаПричинаРешение
Фильтр не показывает все значения в выпадающем спискеВ столбце есть пустые ячейки или скрытые строки.Заполните пустые ячейки или покажите все строки (ГлавнаяФорматСкрыть/отобразитьОтобразить строки).
Фильтр применяется не ко всем даннымДиапазон фильтрации меньше реальной таблицы.Выделите всю таблицу (включая заголовки) и включите фильтр заново.
После добавления новых строк фильтр ломаетсяНовые данные добавлены за пределами исходного диапазона.Преобразуйте данные в умную таблицу (Ctrl+T), чтобы фильтр автоматически расширялся.
Фильтр по цвету не работаетЦвет применён через стиль таблицы, а не условное форматирование.Заново примените цвет через Условное форматирование (ГлавнаяУсловное форматирование).

Если фильтр перестал работать после редактирования таблицы, проверьте:

  • 🔹 Нет ли объединённых ячеек в заголовках — они сбивают автоопределение диапазона.
  • 🔹 Не добавлены ли новые столбцы слева от таблицы — фильтр может «не увидеть» сдвинутые данные.
  • 🔹 Не изменялись ли форматы ячеек (например, даты стали текстом).

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

Нет пустых строк/столбцов внутри данных|

Заголовки не содержат объединённых ячеек|

Форматы данных корректны (даты как даты, числа как числа)|

Цвета применены через условное форматирование (если нужно фильтровать по цвету)-->

6. Продвинутые приёмы: фильтр с формулами, Power Query, макросы

Для автоматизации фильтрации можно использовать:

  • 📝 Формулы в диапазоне условий: вместо статических значений указывайте ссылки на ячейки с формулами. Например, чтобы фильтровать данные за последний месяц, в диапазоне условий укажите:
    =ДАТАМЕС(СЕГОДНЯ;-1;1) // первое число прошлого месяца
    

    =КОНМЕСЯЦА(ДАТАМЕС(СЕГОДНЯ;-1;1);0) // последнее число прошлого месяца

  • 🔄 Power Query: импортируйте данные в Power Query (ДанныеИз таблицы/диапазона), где доступны сотни преобразований, включая фильтрацию по регулярным выражениям.
  • 🤖 Макросы VBA: запишите макрос для повторяющихся действий. Например, чтобы фильтровать и копировать данные в новый лист:
    
    

    Sub FilterAndCopy

    Sheets("Лист1").Range("A1:D100").AutoFilter Field:=2, Criteria1:="Москва"

    Sheets("Лист1").Range("A1:D100").SpecialCells(xlCellTypeVisible).Copy _

    Destination:=Sheets("Результаты").Range("A1")

    Sheets("Лист1").AutoFilterMode = False

    End Sub

Пример с Power Query:

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

7. Сохранение и печать отфильтрованных данных

После фильтрации часто нужно сохранить результаты отдельно или распечатать. Вот как это сделать без потери данных:

  • 🖨️ Печать видимых строк:
    1. Примените фильтр.
    2. Перейдите в ФайлПечать.
    3. В настройках принтера выберите Печатать видимые строкиExcel 2016+ эта опция называется Печатать выделенный фрагмент).
  • 💾 Копирование отфильтрованных данных:
    1. Выделите всю таблицу.
    2. Нажмите Ctrl+GВыделитьТолько видимые ячейки.
    3. Скопируйте (Ctrl+C) и вставьте (Ctrl+V) в новое место.
  • 📊 Сохранение в новый файл:
    1. Скопируйте видимые ячейки (как в п.2).
    2. Вставьте в новую книгу (Ctrl+N) и сохраните отдельно.
⚠️ Внимание: При копировании видимых ячеек Excel игнорирует скрытые строки/столбцы. Если нужно сохранить и структуру таблицы (например, для дальнейшей работы), используйте Расширенный фильтр с опцией Скопировать результат в другое место.

Для регулярного экспорта отфильтрованных данных (например, еженедельных отчётов) настройте макрос или используйте Power Query с автомаческим обновлением при открытии файла.

Частые вопросы о фильтрации в Excel

Как отфильтровать данные по нескольким значениям одновременно (например, Москва ИЛИ СПб)?

Используйте расширенный фильтр:

  1. Создайте диапазон условий с заголовком (например, «Город»).
  2. Под заголовком в разных строках укажите значения: Москва в первой строке, СПб — во второй.
  3. Примените расширенный фильтр с логикой «ИЛИ» (по умолчанию так и работает).

В автофильтре логика «ИЛИ» недоступна.

Почему в выпадающем списке фильтра не показываются все значения?

Вероятные причины:

  • В столбце есть пустые ячейки — фильтр их игнорирует.
  • Данные отформатированы как текст, а не как числа/даты.
  • Включён режим отображения первых 1000 строк (в больших таблицах). Чтобы увидеть все значения, прокрутите список вниз.

Решение: заполните пустые ячейки (например, нулём или текстом «н/д»), проверьте форматы данных.

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

Да, через пользовательский автофильтр:

  1. Откройте выпадающий список фильтра в нужном столбце.
  2. Выберите Текстовые фильтры (или Числовые фильтры) → Настраиваемый фильтр.
  3. Задайте первое условие (например, «содержит» «Москва»).
  4. В выпадающем меню между полями выберите или.
  5. Задайте второе условие (например, «содержит» «СПб»).

Это позволит отобразить строки, где выполнено хотя бы одно из условий.

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

В сводных таблицах фильтрация работает иначе:

  • 🔹 Фильтр по меткам: кликните по стрелке ▼ в заголовке строк или столбцов.
  • 🔹 Фильтр по значениям: кликните по стрелке ▼ в области ЗначенияФильтр по меткам или Фильтр по значениям.
  • 🔹 Срезы: вставьте срез (АнализВставить срез) для интерактивной фильтрации.

Изменения в сводной таблице не затрагивают исходные данные.

Как автоматизировать фильтрацию при открытии файла?

Используйте макросы или Power Query:

  • 📝 Макрос: запишите действия фильтрации (ВидМакросыЗаписать макрос), затем назначьте его на событие Open (в редакторе VBA: ThisWorkbookWorkBook_Open).
  • 🔄 Power Query: настройте запрос с фильтрацией, затем в параметрах загрузки отметьте Обновлять при открытии файла.

Пример макроса для автофильтра при открытии:


Private Sub Workbook_Open

Sheets("Лист1").Range("A1:D100").AutoFilter Field:=1, Criteria1:="Да"

End Sub