Не работает фильтр по дате Excel. Что делать?
Для удобства работы с таблицами с большим количеством данных крайне удобным инструментом является фильтрация. Данная функция позволяет отфильтровать данные в соответствие с разными параметрами, например по названию, цене или дате. Прежде чем исправить ситуацию с работающим фильтром, разберемся в основных принципах его работы.
Как настроить фильтр
Для настройки фильтрации достаточно произвести последовательность действий:
- Активируем одну из ячеек с данными.
- Переходим к параметру «Сортировка и фильтр» на «Главной» вкладке – блок инструментов «Редактирование».
- Также кнопку «Фильтр» можно найти во вкладке «Данные».
- При активации «Фильтра» в ячейках с заголовками появятся стрелки.
- При нажатии на стрелку в одном из столбцов, например «Дата», появится всплывающее меню.
- Здесь убираем галочку напротив «Выделить все» и активируем те параметры, которые нужно отобразить. После нажатия «Ок» в таблице останутся только соответствующие фильтру строчки.
При наличии столбика «Дата» можно воспользоваться специальным фильтром, который работает только с календарными данными.
- Снова нажимаем на стрелочку в ячейке «Дата».
- В появившемся меню вновь ставим галочку – «Выделить все».
- Немного выше в этом меню есть категория «Фильтры по дате», в котором выбираем необходимый период времени. В случае на рисунке выбран период – «В прошлом году».
Важно! При использовании данного фильтра следует учесть, что он работает только с учетом сегодняшней даты.
Сортировка и фильтр
Параметр «Сортировка и фильтр» помогает отсортировать и отфильтровать не только даты, но и любые другие данные. Здесь можно использовать группировку в алфавитном порядке, по возрастанию или убыванию.
- Для начала необходимо выбрать столбик, в котором будет происходить сортировка. Параметр работает в одном столбике, а перемещаются целые строчки с данными.
- При выборе «Сортировка от А до Я» данные столбца «Имя» в алфавитном порядке.
- Чтобы сделать сортировку в обратном порядке, достаточно выбрать «Сортировка от Я до А».
- В зависимости от того, какие именно данные содержатся в столбце, вид сортировки может меняться. Например, для сортировки информации по дате, в меню «Сортировка и фильтр» появятся другие параметры – «От старых к новым» и «От новых к старых».
- В случае работы с числовыми данными сортировка будет осуществляться по критериям «Сортировка по возрастанию» или «Сортировка по убыванию».
Настраиваемая сортировка
В некоторых случаях стандартной сортировки данных бывает недостаточно. Например, в случае одинаковых значений в одном столбике. Это может быть имя клиента, цена товара или сумма закупки. В такой ситуации разработчики Excel создали еще один вид сортировки, параметры которого пользователь устанавливает сам.
Обратите внимание! Опцию «Настраиваемая сортировка…» можно найти в блоке инструментов «Редактирование» на вкладке «Главная».
Выделяем таблицу, в которой необходимо отсортировать данные. При активации параметра «Настраиваемая сортировка…», появиться окошко с рядом условий.
Можно сделать сортировку по одному из столбиков или по нескольким. Здесь предлагается выбрать столбец, вид сортировки и ее порядок. В параметре «Значение» можно выбрать один из видов сортировки:
- Значение.
- Цвет ячейки.
- Цвет шрифта.
- Значение ячейки.
В параметре «Порядок» представлено несколько вариантов:
- в алфавитном порядке – от А до Я;
- в обратном алфавитном порядке – от Я до А;
- по возрастанию;
- по убыванию;
- от старых к новым;
- от новых к старым;
- настраиваемый список.
Вид параметра зависит от значений, которые находятся в том или ином столбике. Например, для текстовых значений порядок будет привязан к буквам алфавита, цифровой формат сортируется по убыванию или возрастанию, а даты упорядочиваются от новых к старым или наоборот.
Почему не работает фильтр
Если данных много, а отфильтровать или отсортировать их не получается, то в первую очередь необходимо удостовериться в том, что в каждой ячейке столбца выставлен соответствующий формат значений. То есть, если необходимо выставить фильтр на столбце с датами, то и формат должен быть «Дата», а не «Текстовый» или «Числовой».
При работе с «Настраиваемой сортировкой» можно выбрать один столбец, значения которого будут выстроены в необходимом порядке. Но одновременно с этим перестановка осуществится и в других столбиках. Не следует беспокоиться о том, что значения перепутаются – строчки перемещаются вместе с другими ячейками в строчке. Аналогичная ситуация происходит и при включении «Фильтра». При выборе определенного параметра фильтра в одном из столбиков, отображаются значения всех столбиков, соответствующей строчки.
Как отфильтровать даты с помощью макросов VBA в Excel
Итог: узнайте, как применять фильтры даты с VBA. Включает примеры фильтрации для диапазона между двумя датами, группами дат из раскрывающегося списка фильтра, динамическими датами в периоде и т.д.
Уровень мастерства: Средний
Скачать файл
Файл Excel, содержащий код, можно скачать ниже. Этот файл содержит код для фильтрации различных типов данных и типов фильтров. Пожалуйста, ознакомьтесь с моей статьей Фильтрация сводной таблицы или среза по самой последней дате или периоду для более подробной информации.
VBA AutoFilters Guide.xlsm (100.5 KB)
Фильтры даты в Excel
У нас есть много вариантов при фильтрации столбца, который содержит даты. Список выпадающего меню фильтра группирует даты по годам, месяцам, дням, часам, минутам, секундам. Мы можем расширить и установить эти флажки для фильтрации нескольких элементов.
Мы также можем выбрать из подменю Date Filters. Это позволяет нам фильтровать диапазоны дат, как до, после или между двумя датами. Есть также много вариантов дат в периодах (этот месяц, следующий месяц, последний квартал и т.д.).
Давайте посмотрим на некоторые примеры кода для различных фильтров даты. При применении фильтра для одного числа нам нужно использовать форматирование чисел, которое применяется в столбце. Это странная причуда VBA, которая может привести к неточным результатам, если вы не знаете правила. В приведенном ниже коде есть пример.
Фильтры диапазона дат в VBA
Следующий макрос содержит примеры основных фильтров даты. Важно отметить, что значения параметров Criteria заключены в кавычки. Операторы сравнения = <> также включены в кавычки.
Пожалуйста, ознакомьтесь с моей статьей Фильтрация сводной таблицы или среза по самой последней дате или периоду для получения более подробной информации о том, как использовать метод AutoFilter и его параметры.
Вы можете скопировать / вставить приведенный ниже код в VB Editor.
Несколько групп дат
Следующий макрос содержит примеры фильтрации нескольких групп дат. Это то же самое, что выбрать конкретные годы, месяцы, дни, часы, минуты из списка в раскрывающемся меню фильтра.
Для этих фильтров мы устанавливаем для параметра Operator значение xlFilterValues. Мы используем Criteria2 (не Criteria1), чтобы указать массив элементов с помощью функции Array.
Это специальный массив шаблонов, где первое число — это период времени (год, месяцы, дни и т. Д.). Второе число — последняя дата в диапазоне. Макрос ниже содержит примеры и дальнейшие пояснения.
Динамические даты в периодах
Следующий макрос содержит примеры дат в определенных периодах. Это аналогично выбору предустановленных элементов фильтра из подменю «Фильтры даты».
Для этих фильтров мы устанавливаем параметр Operator равным xlFilterDynamic. Мы устанавливаем Criteria1 в константу, которая представляет параметр периода динамической даты. Константы перечислены ниже.
Вот ссылка на справочную страницу MSDN со списком XlDynamicFilterCriteria. И спасибо Дугу Глэнси из YourSumBuddy за то, что он указал на февральскую опечатку в константе. У него есть несколько полезных советов для параметра Operator в этой статье.
Фильтры и типы данных
Параметры раскрывающегося меню фильтра изменяются в зависимости от типа данных в столбце. У нас есть разные фильтры для текста, чисел, дат и цветов. Это создает МНОГО различных комбинаций операторов и критериев для каждого типа фильтра.
Я создал отдельные статьи для каждого из этих типов фильтров. Статьи содержат пояснения и примеры кода VBA.
- Как очистить фильтры с помощью VBA
- Как отфильтровать пустые и непустые ячейки
- Как фильтровать числа с помощью VBA
- Как фильтровать текст с помощью VBA
- Как отфильтровать цвета и значки с помощью VBA
Файл в разделе загрузок выше содержит все эти примеры кода в одном месте. Вы можете добавить его в свою личную книгу макросов и использовать макросы в своих проектах.
Пожалуйста, оставьте комментарий ниже с любыми вопросами или предложениями. Спасибо!
Excel не фильтрует столбец
Из этой статьи Вы узнаете как фильтровать столбцы в Excel.
Проблема
Вы хотите отфильтровать столбец, но не видите вообще никаких данных
Возможно, эта ошибка вызвана тем, что Вы выделили всею верхнюю сроку под фильтр.
Где-то есть ошибка и она не позволяет фильтровать
Проверьте стоят ли фильтры на всех столбцах, как на картинке ниже или только на одном.
Заново выделите верхнюю строку → Нажмите Sort & Filter → Filter
Увеличил картинку на случай, если плохо видно
Убеждаемся в том, что выделение снятно
Выделяем нужный столбец и ставим фильтр снова через Sort & Filter → Filter
Убеждаемся в том, что фильтр работает.
Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых
Фильтрация значений даты и времени в таблице Excel
Фильтруемый диапазон значений даты и времени может содержать до 10 000 записей. При большом объеме списка необходимо выбрать конкретные значения даты и времени, по которым требуется выполнить отбор.
Фильтрация дат основана на григорианском летоисчислении. Финансовый год и квартал всегда начинаются в январе календарного года. Если необходимо отфильтровать ячейки по дням недели, то задайте их формат так, чтобы отображались дни недели. Метод пригодится если на летний отдых вы подыскиваете дом отдыха геленджик и вам необходимо сравнить стоимость с периодом отдыха. А для фильтрации по дню недели независимо от даты преобразуйте их в текстовый формат и используйте текстовый фильтр.
Как фильтровать диапазон ячеек со значениями даты и времени?
1 способ [ простая фильтрация ]
- В окне открытого листа выделите диапазон ячеек, содержащий значения даты и времени.
- Перейдите к вкладке «Данные» и в группе «Сортировка и фильтр» щелкните по кнопке «Фильтр».
- Раскройте меню кнопки фильтрации в первой ячейке выделенного диапазона.
- В меню «Автофильтр» активирует в списке соответствующих значений даты и времени строку даты, по которой необходимо провести фильтрацию.
[stextbox умолчанию строки дат сгруппированы по годам, месяцам и дням. При этом выбор даты на более высоком уровне иерархии отражается на всех вложенных датах более низких уровней.[/stextbox]
2 способ [ фильтрация по условию ]
- В окне открытого листа выделите диапазон ячеек, содержащий текстовые данные.
- Перейдите к вкладке «Данные» и в группе «Сортировка и фильтр» щелкните по кнопке «Фильтр».
- Раскройте меню кнопки фильтрации в первой ячейке выделенного диапазона.
- В меню «Автофильтр» наведите курсор на пункт «Фильтры по дате» и выберите в списке оператор сравнения, по которому требуется выполнить отбор: равно, до, после и т. д. (рис. 5.40).
Рис. 5.40. Меню кнопки фильтрации столбца с числами. Пункт «Фильтр по дате»
[stextbox также щелкнуть по кнопке «Выбор даты» и в календаре отметить нужную дату.[/stextbox]
3 способ [фильтрация по дополнительному логическому условию]
- Откройте окно «Пользовательский автофильтр» методом описанным выше.
- В окне «Пользовательский автофильтр» в правой графе первой строки выберите значение даты из списка.
- В левой графе этой же строки выберите нужный оператор сравнения.
- Затем выберите логический оператор:
- И – если в результате фильтрации диапазона данных необходимо получить значения, для которых истинны оба заданные условия;
- ИЛИ – если в результате фильтрации диапазона данных необходимо получить значения, для которых истинны одно или оба заданные условия.
- В правой графе второй строки выберите второе значение даты и времени из списка.
- В левой графе этой же строки выберите второй нужный оператор сравнения.
- Закройте окно кнопкой «ОК».
Как фильтровать столбец таблицы данных со значениями даты и времени?
- В окне открытого листа щелкните по кнопке фильтрации в заголовке столбца таблицы данных, содержащего значения
даты и времени. - Далее действуйте, как в инструкции для фильтрации диапазона ячеек.
[stextbox фильтрации доступны, если строка заголовков столбцов в таблице включена.[/stextbox]