Как поставить отбор (фильтр) в Excel: 5 способов для начинающих и профессионалов

Фильтрация данных в Microsoft Excel — это как волшебная палочка для тех, кто тонет в море информации. Представьте: перед вами таблица с тысячей строк, а нужны только записи за последний квартал или клиенты из Москвы с суммой заказа больше 10 000 ₽. Без фильтров вам пришлось бы вручную просматривать каждую строку, рискуя пропустить важное или потратить часы на рутинную работу. Но с правильно настроенным отбором вы получите нужные данные за секунды.

В этой статье мы разберём не только базовые способы фильтрации (которые знают все), но и скрытые фишки, позволяющие отсеивать данные по нескольким критериям одновременно, использовать формулы в фильтрах и даже автоматизировать процесс с помощью Power Query. А ещё вы узнаете, почему иногда фильтр "не работает" и как это исправить без переустановки Excel.

Если вы никогда не пользовались фильтрами, не переживайте — первый раздел написан специально для новичков. Опытные пользователи могут сразу перейти к расширенным техникам или разделу про typical errors, где мы разбираем типичные ошибки и их решения.

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

Автофильтр — это самый простой и быстрый способ отбора данных. Он подходит для 90% задач и работает во всех версиях Excel (от 2007 до 365). Чтобы его активировать, достаточно выполнить три шага:

  1. Выделите любую ячейку в вашей таблице (или весь диапазон данных, если таблица не оформлена как Smart Table).
  2. Перейдите на вкладку Данные в верхнем меню и нажмите кнопку Фильтр (или используйте горячие клавиши Ctrl+Shift+L).
  3. Рядом с заголовками столбцов появятся стрелки-выпадашки — кликните на любую из них, чтобы открыть меню фильтрации.

Теперь вы можете отбирать данные по разным критериям. Например, в столбце с городами можно оставить только Москва и Санкт-Петербург, а в столбце с датами — выбрать диапазон за последний месяц. Excel автоматически скроет все строки, которые не соответствуют заданным условиям.

Заголовки столбцов не содержат пустых ячеек

В таблице нет объединённых ячеек (они ломают фильтрацию)

Диапазон выделен полностью, включая заголовки

Данные в столбцах имеют одинаковый формат (например, не смешаны даты и текст)-->

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

  • 🔹 Убедитесь, что в таблице нет пустых строк или столбцов внутри данных (они разрывают диапазон).
  • 🔹 Выделите весь диапазон вручную (включая заголовки) и повторите включение фильтра.
  • 🔹 Если используете Excel 365, попробуйте преобразовать диапазон в Smart Table через Вставка → Таблица.

2. Фильтрация по тексту, числам и датам: подробный разбор

Меню автофильтра предлагает разные опции в зависимости от типа данных в столбце. Давайте разберёмся, как работать с каждым из них.

Текстовые данные

Для столбцов с текстом доступны следующие опции:

  • 📌 Сортировка от А до Я / от Я до А — упорядочивает строки по алфавиту.
  • 📌 Фильтр по цвету — если ячейки окрашены, можно отобрать только зелёные или красные.
  • 📌 Текстовые фильтры — здесь скрыты мощные инструменты:
    • равно... — точное совпадение (регистр не важен).
    • начинается с... — например, "Мос" для всех городов на "Мос" (Москва, Московская обл.).
    • содержит... — ищет вхождение подстроки (полезно для email или артикулов).
    • не содержит... — исключает строки с указанным текстом.

Числовые данные и даты

Для чисел и дат доступны диапазонные фильтры:

  • 📊 больше... / меньше... — например, сумма заказа > 5000 ₽.
  • 📊 первые 10... — покажет топ-10 значений по величине.
  • 📊 выше среднего / ниже среднего — автоматически рассчитывает среднее значение.
  • 📅 Для дат: завтра, на этой неделе, в прошлом месяце и т. д.

Пример: вам нужно найти все заказы от клиентов из Москвы с суммой от 3000 до 7000 ₽, сделанные в июне 2026. Для этого:

  1. Отфильтруйте столбец с городами по значению "Москва".
  2. В столбце с суммами выберите Числовые фильтры → Между... и укажите 3000 и 7000.
  3. В столбце с датами выберите Фильтры по дате → Заданный период... и укажите 1 июня — 30 июня 2026.

3. Расширенный фильтр: когда автофильтра недостаточно

Автофильтр хорош для простых задач, но что делать, если нужно:

  • 🔍 Отобрать данные по условиям, которые зависят от других столбцов (например, "если город Москва ИЛИ сумма > 10000").
  • 🔍 Сохранить результаты фильтрации на другой лист.
  • 🔍 Использовать формулы в критериях отбора.

Здесь на помощь приходит расширенный фильтр (Данные → Сортировка и фильтр → Дополнительно).

Рассмотрим пример: у нас есть таблица с продажами, и нам нужно вывести на отдельный лист все записи, где:

  • Регион = "Центральный" И (Менеджер = "Иванов" ИЛИ Сумма > 15000).

Для этого:

  1. Создайте диапазон критериев (например, на листе Критерии):
    
    

    A1: Регион | B1: Менеджер | C1: Сумма

    A2: Центральный | B2: Иванов | C2: >15000

    A3: | B3: | C3:

    Обратите внимание: условия в одной строке соединяются логическим И, а в разных строках — логическим ИЛИ.

  2. Вернитесь на лист с данными, выделите их и выберите Данные → Сортировка и фильтр → Дополнительно.
  3. В окне настроек укажите:
    • Исходный диапазон — ваша таблица с данными (включая заголовки).
    • Диапазон условий — диапазон с критериями (в нашем примере A1:C2).
    • Поместить результат в диапазон — укажите ячейку на другом листе, куда нужно вывести отфильтрованные данные.
Как работает логика в расширенном фильтре?

В расширенном фильтре Excel интерпретирует условия следующим образом:

- Все ячейки в одной строке диапазона критериев соединяются логическим И (например, "Регион = Центральный" И "Сумма > 15000").

- Разные строки соединяются логическим ИЛИ (например, строка 2: "Регион = Центральный" И "Менеджер = Иванов"; строка 3: "Регион = Центральный" И "Сумма > 15000").

- Пустые ячейки в строке критериев игнорируются (например, если в строке указан только "Регион = Центральный", то остальные столбцы не учитываются).

Важно: если в диапазоне критериев есть ошибки (например, опечатка в названии столбца или неверный оператор сравнения), Excel не покажет ошибку, а просто вернёт пустой результат. Всегда проверяйте написание!

4. Фильтрация с помощью срезов (Slicers)

Если вам надоело каждый раз открывать выпадающие меню фильтров, или вы часто работаете с одними и теми же критериями, попробуйте срезы (slicers). Это интерактивные кнопки, которые позволяют фильтровать данные в один клик. Они особенно удобны для дашбордов и отчётов.

Чтобы добавить срез:

  1. Преобразуйте ваш диапазон в Smart Table (Вставка → Таблица).
  2. Выделите любую ячейку в таблице и перейдите на вкладку Конструктор (появится после преобразования).
  3. Нажмите Вставить срез и выберите столбцы, по которым хотите фильтровать.
  4. На экране появятся панели с кнопками — кликайте на них, чтобы применять фильтры.
  5. Преимущества срезов:

    • 🎯 Визуально понятно, какие фильтры активны (кнопки подсвечиваются).
    • 🎯 Можно изменять размер и расположение панелей.
    • 🎯 Поддерживают множественный выбор (удерживайте Ctrl при клике).
    • 🎯 Связываются с несколькими таблицами на листе (если данные связаны).
    📊 Какой способ фильтрации вы используете чаще всего?
    Автофильтр
    Расширенный фильтр
    Срезы (Slicers)
    Формулы в Power Query
    Другой

    5. Фильтрация с формулами: Power Query и функции

    Для самых сложных задач, где стандартные фильтры не справляются, можно использовать:

    • 📈 Power Query — инструмент для преобразования данных (доступен в Excel 2016+).
    • 📈 Функции фильтрации (ФИЛЬТР, СОРТ, УНИК в Excel 365).

    Метод 1: Power Query

    Допустим, у вас есть данные о продажах, и вам нужно оставить только те строки, где:

    • Город — Москва или Санкт-Петербург,
    • Сумма заказа больше средней по региону,
    • Дата — не старше 6 месяцев.

В Power Query это делается так:

  1. Выделите таблицу и нажмите Данные → Получить данные → Из таблицы/диапазона.
  2. В открывшемся редакторе выберите столбец с городом, нажмите на стрелку фильтра и отметьте нужные значения.
  3. Для числовых фильтров используйте Фильтры → Числовые фильтры → Больше... и укажите формулу для среднего (например, = List.Average([Сумма])).
  4. Для дат выберите Фильтры → Фильтры по дате → За последние 6 месяцев.
  5. Нажмите Закрыть и загрузить, чтобы вернуть отфильтрованные данные в Excel.

Метод 2: Функция ФИЛЬТР (Excel 365)

В новых версиях Excel появилась функция ФИЛЬТР, которая позволяет отбирать данные по условиям прямо в формуле. Синтаксис:

=ФИЛЬТР(диапазон; (условие1) * (условие2); "Нет данных")

Пример: отберём из диапазона A2:C100 строки, где в столбце A (Город) указано "Москва", а в столбце C (Сумма) значение больше 5000:

=ФИЛЬТР(A2:C100; (A2:A100="Москва") * (C2:C100>5000); "Нет подходящих данных")

6. Типичные ошибки и их решения

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

Проблема Возможная причина Решение
Фильтр не применяется, стрелки серые Таблица содержит объединённые ячейки или пустые строки/столбцы внутри данных Удалите объединения и заполните пробелы. Выделите диапазон заново и включите фильтр.
После фильтрации остаются пустые строки В исходных данных были скрытые строки или фильтр применён к неверному диапазону Покажите все строки (Главная → Формат → Отобразить или скрыть → Отобразить строки), затем примените фильтр заново.
Расширенный фильтр возвращает пустой результат Ошибка в диапазоне критериев (неверное название столбца, опечатка в условии) Проверьте соответствие названий столбцов в критериях и исходной таблице. Используйте точные операторы (>=, <>).
Фильтр по датам работает некорректно Дата хранится как текст (например, "01.01.2026" вместо настоящей даты) Преобразуйте текст в дату с помощью ДАТАЗНАЧ или ТЕКСТ.В.ДАТУ.
Срезы не обновляются Данные в таблице изменились, но кэш срезов не обновился Кликните правой кнопкой по срезу и выберите Обновить.
⚠️ Внимание: Если вы копируете отфильтрованные данные в другую книгу, фильтр не сохраняется. Чтобы перенести только видимые строки, используйте Специальная вставка → Значения или Power Query.

Ещё одна частая ошибка — попытка отфильтровать данные в защищённом листе. Если лист защищён паролем, фильтры применять нельзя. Сначала снимите защиту через Рецензирование → Снять защиту листа.

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

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

  • 🎨 Цвету ячейки или шрифта (полезно для выделенных условным форматированием строк).
  • 🎨 Пользовательским форматам (например, только ячейки с красным фоном).
  • 🎨 Значкам (если используете условное форматирование с иконками).

Чтобы отфильтровать по цвету:

  1. Примените фильтр к таблице (как описано в первом разделе).
  2. Откройте выпадающее меню в столбце, который нужно отфильтровать.
  3. Выберите Фильтр по цветуФильтр по цвету ячейки (или шрифта) и укажите нужный цвет.

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

Sub FilterByToday()

Dim ws As Worksheet

Set ws = ActiveSheet

ws.Range("A1").AutoFilter Field:=1, Criteria1:="=" & Date

End Sub

Чтобы запустить макрос, нажмите Alt + F8, выберите FilterByToday и нажмите Выполнить.

⚠️ Внимание: Макросы работают только в файлах с расширением .xlsm. Если вы сохраните файл как .xlsx, макросы будут удалены!

8. Альтернативы фильтрам: сводные таблицы и Power Pivot

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

  • 📊 Сводные таблицы — позволяют группировать данные и применять фильтры на лету.
  • 📊 Power Pivot — надстройка для работы с большими объёмами данных (миллионы строк).

Чтобы создать сводную таблицу:

  1. Выделите исходные данные.
  2. Перейдите на вкладку Вставка и нажмите Сводная таблица.
  3. В открывшемся окне укажите, куда поместить таблицу (на новый лист или существующий).
  4. В панели Поля сводной таблицы перетащите нужные столбцы в области Строки, Столбцы и Значения.
  5. Используйте Срезы или встроенные фильтры для отбора данных.

Преимущество сводных таблиц в том, что они динамически связаны с исходными данными. Если вы обновите данные в таблице, сводная таблица тоже обновится (достаточно кликнуть Анализ → Обновить).

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

Можно ли отфильтровать данные по нескольким критериям в одном столбце (например, сумма > 5000 И сумма < 10000)?

Да, для этого используйте пользовательский фильтр:

  1. Откройте выпадающее меню фильтра в нужном столбце.
  2. Выберите Числовые фильтры → Настраиваемый фильтр.
  3. В первом поле укажите больше 5000, во втором — меньше 10000, а между ними выберите И.

Для текста аналогично работает Текстовые фильтры → Настраиваемый фильтр.

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

Есть два способа:

  1. Копирование видимых ячеек:
    1. Примените нужный фильтр.
    2. Выделите видимые строки (исключая заголовки).
    3. Нажмите Ctrl + C, затем перейдите на новый лист и выберите Вставка → Специальная вставка → Значения.
  2. Расширенный фильтр:
    1. Настройте диапазон критериев (как описано в разделе 3).
    2. В окне расширенного фильтра укажите Поместить результат в диапазон и выберите ячейку на новом листе.
Почему после фильтрации пропали некоторые строки, хотя они должны остаться?

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

  • 🔍 В данных есть скрытые символы (пробелы, неразрывные пробелы, символы табуляции). Проверьте с помощью функции ПЕЧСИМВ.
  • 🔍 Формат ячеек не соответствует данным (например, дата хранится как текст). Используйте ФОРМУЛА.ТЕКСТ или ДАТАЗНАЧ для преобразования.
  • 🔍 Объединённые ячейки в таблице — они ломают фильтрацию. Разъедините их через Главная → Объединить и поместить в центре.

Чтобы найти проблему, попробуйте отфильтровать данные по одному критерию за раз.

Можно ли автоматизировать фильтрацию, чтобы она применялась при открытии файла?

Да, с помощью макросов. Например, этот код применит фильтр по текущему месяцу в столбце с датами при открытии книги:

Private Sub Workbook_Open()

Dim ws As Worksheet

Set ws = Sheets("Лист1") ' замените на имя вашего листа

Dim lastRow As Long

lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' предполагаем, что даты в столбце A

' Очищаем старые фильтры

If ws.AutoFilterMode Then ws.AutoFilterMode = False

' Применяем фильтр по текущему месяцу

ws.Range("A1:Z" & lastRow).AutoFilter Field:=1, Criteria1:=">= " & DateSerial(Year(Date), Month(Date), 1), _

Operator:=xlAnd, Criteria2:="<= " & DateSerial(Year(Date), Month(Date) + 1, 0)

End Sub

Чтобы этот код работал, его нужно поместить в модуль ThisWorkbook (откройте редактор VBA через Alt + F11).

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

Стандартные фильтры Excel работают только в пределах одного листа. Чтобы фильтровать данные с нескольких листов, есть два варианта:

  1. Power Query:
    1. Импортируйте данные с каждого листа в Power Query.
    2. Объедините их с помощью Добавить запрос → Объединить.
    3. Примените фильтры в Power Query и загрузите результат на новый лист.
  2. Сводная таблица с несколькими источниками:
    1. Создайте модель данных (Вставка → Сводная таблица → Добавить эти данные в модель данных).
    2. Добавьте все нужные таблицы в модель.
    3. Создайте сводную таблицу на основе модели и настройте фильтры.

Оба метода требуют Excel 2013 или новее.