Фильтрация дат в Excel: от базовых методов до продвинутых приёмов

Работа с датами в Microsoft Excel — одна из самых востребованных задач при анализе данных.hether вы ведёте финансовую отчётность, планируете проекты или обрабатываете логистические данные, умение быстро отфильтровать записи по датам экономит часы рутинной работы. Однако многие пользователи ограничиваются базовым автофильтром, даже не подозревая о существовании более мощных инструментов: пользовательских фильтров, формул ФИЛЬТР (в новых версиях), условного форматирования и даже Power Query.

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

1. Базовый автофильтр: быстрая фильтрация по датам

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

Чтобы активировать автофильтр:

  1. Выделите заголовок столбца с датами (включая строку с названием).
  2. Перейдите на вкладку Данные → нажмите Фильтр (или используйте горячие клавиши Ctrl+Shift+L).
  3. Щёлкните по стрелке фильтра в ячейке с датой и выберите один из вариантов:
    • 📅 Фильтры по дате — предопределённые диапазоны («Завтра», «На этой неделе», «В прошлом месяце»).
    • 🔍 Пользовательский фильтр — для задания произвольного интервала.
    • Выделение отдельных дат — если нужно оставить только конкретные дни (например, 1 и 15 число каждого месяца).

Пример: если вам нужно найти все записи за текущий квартал, выберите Фильтры по дате → В этом квартале. Excel автоматически определит диапазон (например, с 1 апреля по 30 июня).

2. Пользовательский фильтр: гибкие условия для дат

Когда стандартных фильтров недостаточно, на помощь приходит пользовательский фильтр. Он позволяет задавать сложные условия, например:

  • 🗓️ Даты между двумя значениями (например, с 01.01.2023 по 31.12.2023).
  • ⏳ Даты раньше или позже определённой точки (например, все задачи, просроченные на сегодня).
  • 🔄 Даты, равные или не равные конкретному дню (полезно для исключения выходных).

Как настроить:

  1. Активируйте фильтр для столбца с датами (как в предыдущем разделе).
  2. Выберите Фильтры по дате → Пользовательский фильтр.
  3. В открывшемся окне укажите условия. Например, для поиска дат за последние 30 дней:
    больше или равно: =СЕГОДНЯ()-30
    

    меньше или равно: =СЕГОДНЯ()

Обратите внимание: в пользовательском фильтре можно использовать формулы Excel (например, СЕГОДНЯ(), ДАТА()). Это делает фильтр динамическим — он будет автоматически обновляться при открытии файла.

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

Если Excel игнорирует часть дат, проверьте:

1. Формат ячеек — даты должны быть в формате "Дата" (не "Текст" или "Общий").

2. Наличие скрытых символов (пробелов, неразрывных пробелов) — используйте функцию ПРОБЕЛЫ() для очистки.

3. Пустые ячейки — они не попадают в фильтр по умолчанию. Чтобы их включить, в пользовательском фильтре добавьте условие "равно пустому".

3. Фильтрация по дню недели, месяцу или году

Часто требуется отфильтровать данные не по конкретной дате, а по её компонентам — например, найти все записи за понедельники или за март 2026 года. Для этого можно использовать дополнительные столбцы с формулами.

Добавим вспомогательные столбцы:

ФормулаНазначениеПример результата
=ДЕНЬНЕД(A2)Номер дня недели (1=воскресенье, 2=понедельник)2 (понедельник)
=МЕСЯЦ(A2)Номер месяца (1-12)3 (март)
=ГОД(A2)Год2026
=ТЕКСТ(A2; "медд")Сокращённое название дня недели"пн"

После добавления столбцов:

  1. Примените фильтр к новому столбцу (например, с днями недели).
  2. Выберите нужные значения (например, "пн" для понедельников).
📊 Какой метод фильтрации дат вы используете чаще?
Автофильтр
Пользовательский фильтр
Формулы в дополнительных столбцах
Power Query
Не фильтрую даты

Профи-совет: чтобы не засорять таблицу лишними столбцами, скрывайте их после применения фильтра. Для этого выделите столбец → правая кнопка мыши → Скрыть.

4. Фильтрация с помощью функции ФИЛЬТР (Excel 365 и 2021)

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

Синтаксис функции:

=ФИЛЬТР(массив; включить; [если_пусто])
  • 📊 массив — диапазон данных для фильтрации.
  • включить — условие (или массив условий).
  • ⚠️ [если_пусто] — значение, которое будет отображаться, если ничего не найдено (необязательно).

Примеры использования:

  • 🔹 Фильтрация дат позже сегодняшней:
    =ФИЛЬТР(A2:B100; B2:B100>СЕГОДНЯ())
  • 🔹 Даты за текущий месяц:
    =ФИЛЬТР(A2:B100; (ГОД(B2:B100)=ГОД(СЕГОДНЯ()))*(МЕСЯЦ(B2:B100)=МЕСЯЦ(СЕГОДНЯ())))

Используете Excel 365 или 2021 (в старых версиях функции нет)

Данные в столбцах не содержат пустых строк (иначе результат будет #ЗНАЧ!)

Формат дат в ячейках корректный (не текст)

Задаёте условие для всего столбца (B2:B100, а не только B2)-->

Важно: функция ФИЛЬТР возвращает динамический массив, который автоматически "проливается" на соседние ячейки. Не пытайтесь вручную растягивать формулу или обрезать её результат — это нарушит работу.

5. Условное форматирование для визуальной фильтрации

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

Как настроить:

  1. Выделите диапазон с датами.
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. Выберите Использовать формулу для определения форматируемых ячеек.
  4. Введите формулу. Примеры:
    • 🔴 Для просроченных дат: =A1<СЕГОДНЯ()
    • 🟢 Для дат в будущем: =A1>СЕГОДНЯ()
    • 🟡 Для выходных: =ИЛИ(ДЕНЬНЕД(A1;2)>5; ТЕКСТ(A1;"дддд")="воскресенье")
  • Задайте формат (цвет заливки, шрифта и т.д.).
  • Преимущество этого метода — наглядность. Например, вы можете красным выделить все просроченные задачи, зелёным — выполненные в срок, а жёлтым — те, что истекают сегодня. Это позволяет мгновенно оценивать ситуацию без применения фильтров.

    6. Фильтрация дат с помощью Power Query

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

    Пошаговая инструкция:

    1. Выделите таблицу с данными и нажмите Данные → Из таблицы/диапазона (или Получить данные → Из других источников → Из таблицы/диапазона).
    2. В открывшемся редакторе Power Query выделите столбец с датами.
    3. На вкладке Добавить столбец выберите нужное преобразование:
      • 📅 Дата → День → Название дня (для фильтрации по дням недели).
      • 🗓️ Дата → Месяц → Название месяца.
      • 📊 Дата → Возраст (покажет, сколько дней прошло с даты).
  • Щёлкните по стрелке фильтра в столбце с датами и выберите нужный критерий (например, "между").
  • Нажмите Закрыть и загрузить, чтобы вернуть отфильтрованные данные в Excel.
  • Power Query сохраняет все шаги преобразования, поэтому при обновлении исходных данных вам не придётся настраивать фильтр заново — достаточно нажать Обновить.

    =Number.From(Date.Month([Дата])) для номера месяца, а затем создайте новый столбец с формулой: =Number.IntegerDivide([Месяц]-1, 3) + 1 для номера квартала.-->

    7. Распространённые ошибки и как их избежать

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

    ⚠️ Внимание: Если ваши даты хранятся как текст (например, "01.01.2026" вместо настоящей даты), Excel не сможет их правильно отфильтровать. Чтобы исправить это, используйте функцию =ДАТАЗНАЧ(A1) или инструмент Текст по столбцам (вкладка Данные).
    ОшибкаПричинаРешение
    Фильтр не находит датыДата хранится как текст или числоПреобразуйте формат ячеек в "Дата" или используйте ДАТАЗНАЧ()
    Некорректная сортировкаСмешанные форматы (например, "01.01.2026" и "01-янв-2026")Унифицируйте формат с помощью Формат ячеек
    Пустые строки в результатахВ данных есть скрытые символы или пробелыОчистите данные функцией СЖПРОБЕЛЫ()
    Фильтр "зависает"Слишком большой диапазон данныхПреобразуйте данные в умную таблицу (Ctrl+T)
    Динамический фильтр не обновляетсяОтключено автоматическое обновление связейВключите в Формулы → Вычисления → Автоматически

    Ещё одна частая проблема — разница в временных зонах. Если ваши даты содержат время (например, "01.01.2026 12:00"), фильтр по дате может работать некорректно. Решение: используйте функцию =ЦЕЛОЕ(A1), чтобы отсечь временную часть, или применяйте фильтр только к дате без времени.

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

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

    Используйте пользовательский фильтр с условиями:

    больше или равно: =ДАТА(ГОД(СЕГОДНЯ())-1; МЕСЯЦ(СЕГОДНЯ()); ДЕНЬ(СЕГОДНЯ()))
    

    меньше или равно: =СЕГОДНЯ()

    Или в Power Query добавьте столбец с разницей в днях: =Duration.Days(DateTime.LocalNow() - [Дата]) и отфильтруйте значения ≤ 365.

    Почему фильтр не видит даты в формате "январь 2026"?

    Excel воспринимает "январь 2026" как текст, а не дату. Преобразуйте его в настоящую дату с помощью:

    =ДАТА(2026; 1; 1)

    Или используйте Текст по столбцам (вкладка Данные), выбрав формат "ДМЙ".

    Можно ли фильтровать даты по рабочим/выходным дням?

    Да, два способа:

    1. Добавьте вспомогательный столбец с формулой =ЕСЛИ(ИЛИ(ДЕНЬНЕД(A1;2)>5); "Выходной"; "Рабочий") и фильтруйте по нему.
    2. В Power Query добавьте пользовательский столбец с формулой =if Date.DayOfWeek([Дата]) = Day.Sunday or Date.DayOfWeek([Дата]) = Day.Saturday then "Выходной" else "Рабочий".
    Как сохранить отфильтрованные данные в новый файл?

    Выделите видимые строки (после применения фильтра), скопируйте их (Ctrl+C), вставьте в новый лист или книгу (Ctrl+V). Либо используйте Power Query:

    1. Отфильтруйте данные в Power Query.
    2. Нажмите Закрыть и загрузить в....
    3. Выберите Новая книга.
    Почему после фильтрации пропадают формулы в соседних столбцах?

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

    • Скопируйте видимые ячейки (Alt+; для выделения только видимых строк).
    • Вставьте с сохранением формул: правая кнопка → Специальная вставка → Формулы.
    • Или используйте функцию ФИЛЬТР (Excel 365), которая сохраняет связь с исходными данными.