Оглавление
В учебнике показано, как использовать расширенный фильтр в Excel, и приведен ряд нетривиальных примеров диапазона критериев для создания фильтра с учетом регистра, поиска совпадений и различий между двумя столбцами, извлечения записей, соответствующих меньшему списку, и многое другое.
В нашей предыдущей статье мы обсудили различные аспекты расширенного фильтра Excel и то, как использовать его для фильтрации строк с помощью логики AND и OR. Теперь, когда вы знаете основы, давайте рассмотрим более сложные примеры диапазона критериев, которые могут оказаться полезными для вашей работы.
Настройка диапазона критериев на основе формулы
Поскольку большинство примеров диапазонов критериев, рассматриваемых в этом учебнике, будут включать различные формулы, давайте начнем с определения основных правил для их правильной настройки. Поверьте, этот небольшой теоретический материал сэкономит вам много времени и избавит от головной боли при устранении неполадок в сложных диапазонах критериев, включающих несколько условий на основе формул.
- Формула, которую вы используете в диапазоне критериев, должна оцениваться как TRUE или FALSE .
- Диапазон критериев должен содержать не менее 2 ячеек: ячейка формулы и ячейка заголовка.
- Сайт ячейка заголовка критериев, основанных на формулах, должны быть либо пустыми, либо отличаться от любого из заголовков таблицы (диапазона списка).
- Чтобы формула была оценена для каждый ряд в диапазоне списка, обратитесь к самой верхней ячейке с данными, используя относительную ссылку, например A1.
- Чтобы формула оценивалась только для конкретная клетка или диапазон ячеек , обратитесь к этой ячейке или диапазону, используя абсолютную ссылку, например $A$1.
- При ссылке на диапазон списка в формуле, всегда используйте абсолютные ссылки на ячейки.
- При задании нескольких условий введите все критерии в одной строке, чтобы объединить их с помощью символа И оператор, и поместить каждый критерий в отдельную строку, чтобы объединить их с помощью ИЛИ оператор.
Примеры диапазона критериев расширенного фильтра Excel
Следующие примеры научат вас создавать собственные фильтры в Excel для решения более сложных задач, которые невозможно выполнить с помощью обычного автофильтра Excel.
Фильтр для текстовых значений с учетом регистра
Как и автофильтр Excel, инструмент расширенного фильтра по своей природе не чувствителен к регистру, то есть он не различает прописные и строчные символы при фильтрации текстовых значений. Однако вы можете легко выполнить поиск с учетом регистра, используя функцию EXACT в критериях расширенного фильтра.
Например, чтобы отфильтровать строки, содержащие Банан , игнорирование БАНАНА и банан , введите следующую формулу в диапазоне критериев:
=EXACT(B5, "Банан")
Где B - столбец, содержащий названия элементов, а строка 5 - первая строка данных.
Затем примените расширенный фильтр Excel, нажав на кнопку Расширенный кнопка на Данные вкладку, и настройте Диапазон списка и Диапазон критериев как показано на скриншоте ниже. Пожалуйста, обратите внимание на то, что Диапазон критериев включает 2 ячейки - ячейка заголовка и ячейка формулы .
Примечание. На рисунке выше, а также на всех последующих скриншотах в этом учебнике формулы в ячейках диапазона критериев показаны исключительно для наглядности. В реальных рабочих листах ячейка с формулой должна возвращать либо TRUE, либо FALSE, в зависимости от того, соответствует ли первый ряд данных критериям или нет:
Фильтр значений выше или ниже среднего в столбце
При фильтрации числовых значений часто требуется отобразить только те ячейки, которые выше или ниже среднего значения в столбце. Например:
Чтобы отфильтровать строки с промежуточным итогом выше среднего , используйте следующую формулу в диапазоне критериев:
=F5>AVERAGE($F$5:$F$50)
Чтобы отфильтровать строки с промежуточным итогом ниже среднего , используйте следующую формулу:
=F5
Обратите внимание, что мы используем относительную ссылку для ссылки на верхнюю ячейку с данными (F5), и абсолютные ссылки для определения всего диапазона, для которого вы хотите рассчитать среднее значение, исключая заголовок столбца ($F$5:$F$50).
Следующий снимок экрана демонстрирует формулу "выше среднего" в действии:
Те из вас, кто знаком с числовыми фильтрами Excel, могут задаться вопросом, зачем кому-то использовать расширенный фильтр, если встроенные числовые фильтры уже имеют Выше среднего и Ниже среднего варианты? Верно, но встроенные фильтры Excel нельзя использовать с логикой ИЛИ!
Итак, чтобы продолжить этот пример, давайте отфильтруем строки, в которых Промежуточный итог (колонка F) ИЛИ Сентябрь продажи (столбец E) выше среднего. Для этого настройте диапазон критериев с помощью логики ИЛИ, введя каждое условие в отдельной строке. В результате вы получите список элементов со значениями выше среднего в столбце E или F:
Фильтровать строки с пустыми или непустыми строками
Как всем известно, Excel Filter имеет встроенную опцию для фильтрации пустых ячеек. Выбирая или снимая выделение с ячеек, можно отфильтровать пустые ячейки. (Заготовки) флажок в меню Автофильтр, вы можете отобразить только те строки, которые имеют пустые или непустые ячейки в одном или нескольких столбцах. Проблема в том, что встроенный фильтр Excel для пустых ячеек может работать только с логикой AND.
Если вы хотите отфильтровать пустые или непустые ячейки с помощью логики "ИЛИ" или использовать условия "пустой / непустой" вместе с некоторыми другими критериями, настройте диапазон критериев расширенного фильтра с одной из следующих формул:
Фильтр заготовки :
верхняя_ячейка =""Фильтр непустые:
верхняя_ячейка ""Фильтрация пустых ячеек с помощью логики ИЛИ
Чтобы отфильтровать строки, в которых есть пустые ячейки либо в столбце A или B, либо в обоих столбцах, настройте диапазон критериев расширенного фильтра таким образом:
=A6=""
=B6=""
Где 6 - самый верхний ряд данных.
Фильтрация непустых ячеек с помощью логики OR, а также AND
Чтобы лучше понять, как Расширенный фильтр Excel работает с несколькими критериями, давайте отфильтруем строки в нашей таблице-образце со следующими условиями:
- Либо Регион (колонка А) или Пункт (колонка B) должна быть непустой, и
- Промежуточный итог (колонка C) должно быть больше 900.
Говоря иначе, мы хотим отображать строки, которые удовлетворяют следующим условиям:
( Промежуточный итог >900 И Регион =non-blank) ИЛИ ( Промежуточный итог >900 И Пункт =non-blank)
Как вы уже знаете, в диапазоне критериев расширенного фильтра Excel условия, объединенные логикой AND, должны быть введены в одной строке, а условия, объединенные логикой OR, - в разных строках:
Поскольку один из критериев в этом примере выражен формулой (непустые), а другой включает оператор сравнения (Sub-total> 900), напомню, что:
- Критерии, сформированные с помощью операторов сравнения, должны иметь заголовки, точно совпадающие с заголовками таблицы, например Промежуточный итог критерии на скриншоте выше.
- Критерии, основанные на формулах, должны иметь либо пустую ячейку заголовка, либо заголовок, который не совпадает ни с одним из заголовков таблицы, например Незаполненные критерии на скриншоте выше.
Как извлечь верхние/нижние N записей
Как вы, вероятно, знаете, встроенные фильтры чисел Excel имеют возможность отображать 10 верхних или 10 нижних элементов. Но что если вам нужно отфильтровать 3 верхних или 5 нижних значений? В этом случае на помощь приходит расширенный фильтр Excel со следующими формулами:
Выписка топ N предметов:
верхняя_ячейка >=LARGE( ассортимент , N)Выписка дно N предметов:
верхняя_ячейка <=SMALL( ассортимент , N)Например, чтобы отфильтровать 3 верхних промежуточных итога, создайте диапазон критериев с помощью этой формулы:
=F5>=LARGE($F$5:$F$50,3)
Чтобы извлечь 3 нижних промежуточных итога, используйте эту формулу:
=F5>=SMALL($F$5:$F$50,3)
Где F5 - самая верхняя ячейка с данными в Промежуточный итог столбца (за исключением заголовка столбца).
На следующем снимке экрана показана формула топ-3 в действии:
Примечание. Если диапазон списка содержит несколько строк с одинаковыми значениями, которые попадают в верхний/нижний список N, все такие строки будут отображены, как показано на скриншоте ниже:
Фильтр совпадений и различий между двумя столбцами
В одной из наших предыдущих статей рассказывалось о различных способах сравнения двух столбцов в Excel и поиска совпадений и различий между ними. Помимо формул Excel, правил условного форматирования и инструмента удаления дубликатов, о которых говорилось в вышеприведенном руководстве, вы также можете использовать Расширенный фильтр Excel для извлечения строк, которые имеют одинаковые или разные значения в двух или более столбцах. Для этого введите один из нихследующих простых формул в диапазоне критериев:
- Фильтр для соответствует (дубликаты) в 2 колонки:
=B5=C5
=B5C5
Где B5 и C5 - самые верхние ячейки с данными в двух столбцах, которые вы хотите сравнить.
Примечание. Инструмент расширенного фильтра может искать только совпадения и различия в один ряд Чтобы найти все значения, которые находятся в столбце A, но отсутствуют в столбце B, используйте эту формулу.
Фильтр строк на основе совпадающих элементов в списке
Предположим, у вас есть большая таблица с сотнями или тысячами строк, и вы получили более короткий список, содержащий только те элементы, которые актуальны в данный момент. Вопрос в том, как найти все записи в вашей таблице, которые есть или отсутствуют в меньшем списке?
Фильтровать строки, соответствующие элементам в списке
Чтобы найти все элементы в исходной таблице, которые также присутствуют в меньшем списке, используйте следующую формулу COUNTIF:
КОУНТИФ( список_к_матчу , top_data_cell)Если предположить, что меньший список находится в диапазоне D2:D7, а элементы таблицы, которые нужно сравнить с этим списком, находятся в столбце B, начиная со строки 10, то формула будет выглядеть следующим образом (обратите внимание на использование абсолютных и относительных ссылок):
=COUNTIF($D$2:$D$7,B10)
Конечно, вы не ограничены фильтрацией таблицы только по одному критерию.
Например, чтобы отфильтровать строки, соответствующие списку, но для Северный регион только, введите два критерия в одну строку, чтобы они работали с логикой AND:
- Регион:
= "=Север"
- Соответствующие предметы:
=COUNTIF($D$2:$D$7,B10)
Как видно на скриншоте ниже, в таблице есть только две записи, которые соответствуют обоим критериям:
Примечание. В этом примере мы используем точное совпадение критерии для текстовых значений: ="=Север "
чтобы найти только те ячейки, которые точно равны указанному тексту. Если вы введете критерии региона просто как Север (без знака равенства и двойных кавычек), Microsoft Excel найдет все элементы, начинающиеся с указанного текста, например. Северо-восток или Северо-Запад Дополнительные сведения см. в разделе Расширенный фильтр Excel для текстовых значений.
Фильтровать строки, которые не соответствуют элементам в списке
Чтобы найти все элементы в таблице, которых нет в меньшем списке, проверьте, равен ли нулю результат нашей формулы COUNTIF:
КОУНТИФ( список_к_матчу , top_data_cell) =0Например, для фильтрации Северный регион элементы в таблице, которые появляются в списке, используйте следующие критерии:
- Регион:
= "=Север"
- Несовпадающие предметы:
=COUNTIF($D$2:$D$7,B10)=0
Примечания:
- Если список для сравнения находится на другом рабочем листе, обязательно укажите имя листа в формуле, например.
=COUNTIF(Sheet2!$A$2:$A$7,B10)
. - Если вы хотите извлечь результаты на другой лист, запустите Расширенный фильтр с целевого листа, как описано в разделе Как извлечь отфильтрованные строки на другой рабочий лист.
Фильтр для выходных и будних дней
До сих пор в примерах диапазона критериев расширенного фильтра мы рассматривали в основном числовые и текстовые значения. Теперь пришло время дать несколько подсказок тем из вас, кто оперирует датами.
Встроенные фильтры дат Excel предоставляют широкий спектр возможностей, которые охватывают многие сценарии. Многие, но не все! Например, если бы вам дали список дат и попросили отфильтровать дни недели и выходные, как бы вы поступили?
Как вы, вероятно, знаете, Microsoft Excel предоставляет специальную функцию WEEKDAY, которая возвращает день недели, соответствующий заданной дате. И именно эту функцию мы будем использовать в диапазоне критериев расширенного фильтра Excel.
Как отфильтровать выходные в Excel
Учитывая, что в терминах WEEKDAY 1 означает воскресенье, а 6 - субботу, формула для фильтрации выходных дней выглядит следующим образом:
OR(WEEKDAY( дата )=7, WEEKDAY( дата )=1)В данном примере мы фильтруем даты в столбце B, начиная со строки 5, поэтому наша формула Weekends имеет следующий вид:
=OR(БУДНИЙ ДЕНЬ(B5)=7, БУДНИЙ ДЕНЬ(B5)=1)
Как фильтровать дни недели в Excel
Чтобы отфильтровать дни недели, измените приведенную выше формулу таким образом, чтобы она не учитывала 1 (воскресенье) и 7 (суббота):
AND(WEEKDAY( дата )7, WEEKDAY( дата )1)Для нашей таблицы-образца отлично подойдет следующая формула:
=AND(WEEKDAY(B5)7, WEEKDAY(B5)1)
Кроме того, можно добавить еще одно условие, чтобы отфильтровать пустые ячейки: =B5""
Чтобы отфильтровать даты в рабочих листах другими способами, просто найдите соответствующую функцию Date и без колебаний используйте ее в расширенном диапазоне критериев фильтрации.
Конечно, ваши возможности не ограничиваются примерами, рассмотренными в этом руководстве, наша цель - дать вам несколько вдохновляющих идей, которые помогут вам встать на правильный путь. Помня, что путь к мастерству вымощен практикой, вы можете загрузить наши примеры по ссылке ниже и расширить или изменить их.Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!
Практическая тетрадь
Примеры расширенного фильтра Excel (файл.xlsx)