Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel для iPad Excel для iPhone Excel для планшетов с Android Excel для телефонов с Android Еще…Меньше
Функция ФИЛЬТР позволяет выполнять фильтрацию диапазона данных на основе условий, которые вы определяете.
В следующем примере мы использовали формулу =FILTER(A5:D20,C5:C20=H2,»») для возврата всех записей Для Apple, как указано в ячейке H2, и если яблок нет, возвращается пустая строка («»).
Функция ФИЛЬТР фильтрует массив с учетом массива логических значений (ИСТИНА/ЛОЖЬ).
=ФИЛЬТР(массив;включить;[если_пусто])
Аргумент |
Описание |
массив Обязательный элемент |
Массив или диапазон для фильтрации |
включить Обязательный элемент |
Массив логических переменных с аналогичной высотой или шириной, что и массив. |
[если_пусто] Необязательный элемент |
Значение, возвращаемое, если все значения во включенном массиве пустые (фильтр не возвращает ничего) |
Примечания:
-
Массив может рассматриваться как ряд значений, столбец со значениями или комбинация строк и столбцов значений. В приведенном выше примере массив для нашей формулы ФИЛЬТР представляет собой диапазон A5:D20.
-
Функция ФИЛЬТР возвращает массив, который будет переноситься на другие ячейки, если является конечным результатом формулы. Это означает, что Excel будет динамически создавать соответствующий по размеру диапазон массива при нажатии клавиши ВВОД. Если ваши вспомогательные данные хранятся в таблице Excel, тогда массив будет автоматически изменять размер при добавлении и удалении данных из диапазона массива, если вы используете структурированные ссылки. Дополнительные сведения см. в статье о переносе массива.
-
Если набор данных потенциально может возвращать пустое значение, используйте третий аргумент ([если_пусто]). В противном случае возникнет ошибка #ВЫЧИС! , так как Excel в настоящее время не поддерживает пустые массивы.
-
Если какое-либо значение аргумента include является ошибкой (#N/A, #VALUE и т. д.) или не может быть преобразовано в логическое значение, функция FILTER вернет ошибку.
-
Приложение Excel ограничило поддержку динамических массивов в операциях между книгами, и этот сценарий поддерживается, только если открыты обе книги. Если закрыть исходную книгу, все связанные формулы динамического массива вернут ошибку #ССЫЛКА! после обновления.
Примеры
Функция ФИЛЬТР, используемая для возврата нескольких условий
В данном случае мы используем оператор умножения (*) для возврата всех значений в диапазоне массива (A5:D20), содержащих текст «Яблоко» И находящихся в восточном регионе: =ФИЛЬТР(A5:D20;(C5:C20=H1)*(A5:A20=H2);»»).
Функция ФИЛЬТР, используемая для возврата нескольких условий и сортировки
В данном случае мы используем предыдущую функцию ФИЛЬТР с функцией СОРТ для возврата всех значений в диапазоне массива (A5:D20), содержащих текст «Яблоко» И находящихся в восточном регионе, а затем для сортировки единиц в порядке убывания: =СОРТ(ФИЛЬТР(A5:D20;(C5:C20=H1)*(A5:A20=H2);»»);4;-1)
В данном случае мы используем функцию ФИЛЬТР с оператором сложения (+) для возврата всех значений в диапазоне массива (A5:D20), содержащих текст «Яблоко» ИЛИ находящихся в восточном регионе, а затем для сортировки единиц в порядке убывания: =СОРТ(ФИЛЬТР(A5:D20;(C5:C20=H1)+(A5:A20=H2);»»),4;-1).
Обратите внимание на то, что ни одна из функций не требует абсолютных ссылок, так как они находятся только в одной ячейке, а их результаты переносятся в соседние ячейки.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Функция СЛМАССИВ
Функция ПОСЛЕДОВ
Функция СОРТ
Функция СОРТПО
Функция УНИК
Ошибки #ПЕРЕНОС! в Excel
Динамические массивы и поведение массива с переносом
Оператор неявного пересечения: @
Нужна дополнительная помощь?
Функция ФИЛЬТР позволяет выполнять фильтрацию диапазона данных на основе определенных условий.
Описание функции ФИЛЬТР
Функция ФИЛЬТР является одной из семи функций, которые Microsoft анонсировала 24 сентября 2018 года вместе с революционным нововведением использования динамических массивов в Excel. Данная функция, как и остальные 6 и возможность использования динамических массивов не должна быть доступна пользователям, купившим Office 2019 и, тем более, более ранним версиям.
Воспользоваться новыми возможностями смогут пользователи с подпиской Office 365, а в будущем пользователи Office 2021 (следующей версией, которая следует за Office 2019), если к тому времени Microsoft попросту не оставит только вариант с подпиской.
Данная функция своим функционалом полностью замещает возможности расширенного фильтра в Excel, который хоть и предоставлял большую гибкость по сравнению с автофильтром, но многие пользователи так и не смогли освоить его использование.
Синтаксис
=ФИЛЬТР(массив; включить; [если_пусто])
Аргументы
массиввключитьесли_пусто
Обязательный. Массив или диапазон для фильтрации
Обязательный. Массив логических переменных с аналогичной высотой или шириной, что и массив. Условие записывается с использование функционала формул динамического массива, т.е. массив значений равен значению определенной ячейки.
На рисунке выше видно, что вторым аргументом записано условие: когда значение из диапазона равно Яблоко, последний, не обязательный, аргумент опущен.
Необязательный. Значение, возвращаемое, если все значения во включенном массиве пустые (фильтр не возвращает ничего)
Замечания
- Функция ФИЛЬТР (FILTER) использует возможности динамических массивов Excel, это означает, что результат вычисления будет автоматически распространяться на смежные ячейки. Также это означает, что нет необходимости фиксировать ячейки абсолютными ссылками в формуле, равно как и использовать автозаполнение;
- Если нужно отфильтровать значение по нескольким условиям, то для логического И используется знак умножения *
На рисунке выше представлен результат фильтрации по продукту Яблоко из региона Восток;
- Если нужно отфильтровать значение по нескольким условиям, то для логического ИЛИ используется знак суммирования +
На рисунке выше диапазон отфильтрован по продукту Яблоко или из региона Восток;
- Если результат вычисления формулы должен заполнить ячейки, которые уже заняты, то будет возвращена ошибка #ПЕРЕНОС!
После очистки ячейки/ ячеек, которые «стоят на пути» вычисления формулы, формула вернет результат.
Пример
Видео работы функции
Дополнительные материалы
Файл из видео.
Microsoft добавила динамические массивы в Excel и новые функции.
Функции динамических массивов: СОРТ, ФИЛЬТР и УНИК
Эта статья является логическим продолжением предыдущего материала про новые динамические массивы (ДМ), появившиеся в Excel в Office 365. Если вы ещё с не ознакомились (кому лень читать — там есть видео), то очень советую сделать это сейчас, чтобы понимать о чём, собственно, идёт речь и как заполучить все эти радости в вашем Excel.
Обновление Office 365, которое подарило Microsoft Excel новый вычислительный движок с поддержкой динамических массивов, также добавило к нашему арсеналу 7 новых функций, заточенных специально для работы с массивами. В этой статье я хотел бы рассказать про три самых важных функции: СОРТ, ФИЛЬТР и УНИК. Остальные играют скорее вспомогательную роль — про них чуть позже.
Для простоты я буду во всех примерах я буду показывать работу этих функций на обычных таблицах, но можно иметь ввиду, что с «умными» таблицами (созданными через Главная — Форматировать как таблицу или сочетанием клавиш Ctrl+T) эти функции тоже отлично работают.
Итак, поехали…
Функция СОРТ (SORT)
Синтаксис:
=СОРТ(массив; [индекс_сортировки]; [порядок_сортировки]; [по_столбцу])
В самом простом варианте требует в качестве аргумента только массив (диапазон) и выдает его уже в отсортированном виде:
По умолчанию сортировка выполняется по возрастанию. Если нужен обратный порядок, то за это отвечает третий аргумент (1 — по возрастанию, -1 — по убыванию):
Если на входе указать диапазон из несколько колонок в данных, то сортировка происходит по первому столбцу. Если нужно сортировать не по первому, то в качестве второго аргумента можно указать номер столбца для сортировки:
Если хочется сортировать по нескольким столбцам сразу, то придётся задать массив номеров столбцов во втором аргументе в фигурных скобках. Одновременно аналогичным образом можно задать третьим аргументом и направление сортировки для каждого столбца.
Например, если мы хотим отсортировать наш список по городам по возрастанию и затем по суммам по убыванию, то это будет выглядеть так:
Последний аргумент используется, если нужно сортировать не строки, а столбцы, т.е. упорядочивать данные по горизонтали, что встречается существенно реже.
Вот так — просто и изящно. Особенно, если вспомнить какую монстрообразную формулу массива требовалось ввести раньше для сортировки всего лишь одного (!) столбца:
Бррр…
Функция ФИЛЬТР (FILTER)
Синтаксис:
=ФИЛЬТР(массив; включить; [если_пусто])
Назначение этой функции — принять в качестве аргумента массив исходных ячеек и отфильтровать его по заданному условию(ям). Какие строки включить в результаты, а какие убрать — определяется вторым аргументом. Он должен представлять из себя массив логических значений ЛОЖЬ (FALSE) и ИСТИНА (TRUE), задающих статус для каждой строки:
Логическую ИСТИНУ и ЛОЖЬ можно, для компактности, заменить на 1 (или любое другое число) и 0 (или пустую ячейку):
А самое интересное, что логические значения могут быть результатом какого-либо выражения, например:
Если чуть подумать, то простор для фантазии тут открывается широкий. Вот вам для затравки несколько вариантов условий, с которыми замечательно будет работать эта функция:
- =ФИЛЬТР(B2:D25; D2:D25>=10000) — отбираем все заказы, где стоимость больше или равна 10 000
- =ФИЛЬТР(B2:D25; ЛЕВСИМВ(B2:B25) = «Б») — фильтрация всех строк, где название товара начинается с «Б» (блуза, брюки, бриджи и т.д.)
- =ФИЛЬТР(B2:D25; (B2:B25 = «Брюки») * (C2:C25 = «Анна»)) — отбор всех сделок Анны, где она продавала брюки
- =ФИЛЬТР(B2:D25; (C2:C25 = «Анна») + (C2:C25 = «Иван»)) — все сделки Анны и Ивана
- =ФИЛЬТР(B2:D25; ЕСЛИОШИБКА(ПОИСК(«Самара»;A2:A25);0)) — фильтрация всех сделок, где в названии города содержится слово Самара (г. Самара, Самара г., город Самара, Самара-городок и т.д.)
Если функция ФИЛЬТР не находит ни одного значения, удовлетворяющего условию, то она выдаёт ошибку #ВЫЧИСЛ! Чтобы вывести вместо неё что-то более осмысленное, можно использовать третий аргумент:
Функция УНИК (UNIQUE)
Синтаксис:
=УНИК(массив; [по_столбцам]; [один_раз])
В самом простом варианте эта функция извлекает из входного массива все имеющиеся там значения, удаляет повторы и выдаёт то, что осталось:
Если в качестве исходного массива выделено несколько столбцов, то проверка на уникальность идёт по всем, т.е. по связке значений из всех ячеек каждой строки:
Очень интересно работает третий аргумент — он заставляет функцию извлечь из исходного массива только те данные, которые встречаются там всего один раз, т.е. не имеют клонов:
Комбинирование функций
Само-собой, никто не запрещает нам «женить» все упомянутые функций между собой — здесь-то и начинается настоящая магия, мощь и синергия.
Разберём, для примера, классическую задачу: предположим, что нам нужно сформировать справочник по городам для выпадающего списка на основе выгрузки из какой-нибудь базы данных. В исходной выгрузке города повторяются в случайном порядке, есть пустые ячейки и дубли. А необходимый нам справочник, содержащий эталонный набор городов, должен быть:
- без повторов
- без пустых ячеек
- отсортирован по возрастанию от А до Я
Делается всё вышеперечисленное одной (!) формулой:
В английской версии эта функция выглядит как:
=SORT(UNIQUE(FILTER(B2:B100000;NOT(ISEMPTY(B2:B100000)))))
Здесь:
- ФИЛЬТР — отбирает только те ячейки, где есть данные (не пусто)
- УНИК — убирает повторы в отобранном функцией ФИЛЬТР списке
- СОРТ — сортирует получившийся справочник по алфавиту
После этого останется только указать получившийся динамический массив как источник для выпадающего списка на вкладке Данные — Проверка данных (Data — Validation), не забыв добавить после адреса первой ячейки массива знак решётки:
Причем, несмотря на приличный размер исходного диапазона (100 тыс. строк!) никакого торможения при пересчёте такой формулы нет абсолютно — новый вычислительный движок Excel справляется «на ура». При этом классические формулы массива на подобных задачах начинали ощутимо подтупливать на таблицах уже с 3-5 тыс. строк, а на 100 тыс. просто загнали бы ваш Excel в кому.
Оглядываясь назад и вспоминая все свои выполненные проекты по автоматизации за последние Х лет, с грустью понимаю сколько дней и даже, наверное, недель можно было бы сэкономить, если бы динамические массивы и такие функции существовали тогда. Даааа….
Ну, лучше поздно, чем никогда, верно? По крайней мере, нашим детям точно будет проще
Ссылки по теме
- Что такое динамические массивы в новом Excel и как они работают
- Как отсортировать список формулой
- Как создать выпдающий список в ячейке листа Excel
Filtering data helps focusing on certain aspects of a data set. Excel has built-in features for this, an Excel formula for filtering data was not in the software’s scope until the introduction of dynamic array functions. In this guide, we’re going to show you how you can use Excel formula for filtering data.
Syntax
=IFERROR(INDEX(list range,SMALL(IF(criteria=criteria range,ROW(criteria range),»»),ROW()-ROW(return title cell))),»»)
Steps
- Select the range of cells that will be populated with filtered values
- Start the formula with = IFERROR( function to return empty string when an error occurs)
- Continue with INDEX(
- Select or type in the range reference that contains your original list B:B,
- Continue with the SMALL( function which provides the row indexes of cells
- Next, use IF( to return an array that contains the numbers and empty strings
- Use an equation to filter $E$3=C:C, the criteria cell should be an absolute reference
- Continue with ,ROW(C:C),»»), which will provide TRUE/FALSE conditions for the IF function
- Type in ROW()-ROW(E5) to generate an incremental number for array from the IF function
- Type in )),»») and press Ctrl + Shift + Enter to complete the array formula
How
To filter out values from a range, we need to pinpoint the cells that meet a certain condition, and retrieve them from the original list. Keep mind that we’re going to need to create an array formula to avoid to creating several helper columns, and use a single Excel formula for filtering data. As a result, the formulas will return array values.
Our example returns values from column B by searching the value of cell E3 in column C. This condition leads to the logical test,
This test returns an array of Boolean values (TRUE and FALSE). For example, if the value of cell E3 is «I», the logical test returns an array like below,
{FALSE;FALSE;TRUE;TRUE;TRUE;…….;FALSE}
These Boolean values become the logical test values for the IF function. The IF function provides the row numbers of cells that meet the criteria, and returns empty strings for others.
The IF function here returns an array. This time an array of row numbers and empty strings.
{«»;»»;3;4;5;…….;»»}
The next step is sorting the row numbers in our new array. The SMALL function can return the nth smallest number from an array. Also note that Excel evaluates string values as almost infinitely large numbers, making any other number small in comparison. This is the reason why the SMALL function is used instead of the LARGE function. To assign an ‘n’ value to the SMALL function, we use the ROW function again with a single cell that should be one cell above the first row to return numbers from 1, and use a relative reference to increase its row number. As a result; SMALL(IF($E$3=C:C,ROW(C:C),»»),ROW()-ROW(E5)) formula returns a row index value which will be used by the INDEX function to return a value from a non-empty cell.
{1}
The INDEX function selects the reference to return values, and the IFERROR envelops the nested formula to avoid errors.
=IFERROR(INDEX(B:B,SMALL(IF($E$3=C:C,ROW(C:C),»»),ROW()-ROW(E5))),»»)
Finally, press the Ctrl + Shift + Enter combination instead of just pressing the Enter key to enter your formula as an array formula, and you’re done!
Содержание
- Функция фильтра Excel — синтаксис
- Пример 1. Фильтрация данных по одному критерию (регион)
- Пример 2: Фильтрация данных на основе одного критерия (больше или меньше)
- Пример 3: Фильтрация данных с использованием нескольких критериев (И)
- Пример 4: Фильтрация данных с использованием нескольких критериев (ИЛИ)
- Пример 5: Фильтрация данных для получения записей выше / ниже среднего
- Пример 6: Фильтрация только записей ЧЕТНЫХ чисел (или записей НЕЧЕТНЫХ чисел)
- Пример 7: Сортировка отфильтрованных данных с помощью формулы
Посмотреть видео — Примеры функции ФИЛЬТР в Excel
Office 365 предлагает несколько удивительных функций, таких как XLOOKUP, SORT и FILTER.
Когда дело доходит до фильтрации данных в Excel, в мире, предшествующем Office 365, мы в основном зависели от встроенного фильтра Excel или, максимум, от расширенного фильтра или сложных формул СУММПРОИЗВ. Если вам нужно было отфильтровать часть набора данных, обычно это был сложный обходной путь (то, что я рассмотрел здесь).
Но с новой функцией FILTER теперь очень легко быстро отфильтровать часть набора данных на основе условия.
И в этом уроке я покажу вам, насколько прекрасна новая функция ФИЛЬТР и некоторые полезные вещи, которые вы можете сделать с ее помощью.
Но прежде чем я перейду к примерам, давайте быстро узнаем о синтаксисе функции ФИЛЬТР.
Если вы хотите получить эти новые функции в Excel, вы можете перейти на Office 365 (присоединяйтесь к инсайдерской программе, чтобы получить доступ ко всем функциям / формулам)
Ниже приведен синтаксис функции ФИЛЬТР:
= ФИЛЬТР (массив; включить; [if_empty])
- множество — это диапазон ячеек, в котором у вас есть данные, и вы хотите отфильтровать некоторые данные из него
- включают — это условие, которое сообщает функции, какие записи фильтровать
- [if_empty] — это необязательный аргумент, в котором вы можете указать, что возвращать, если функция ФИЛЬТР не найдет результатов. По умолчанию (если не указано иное) возвращается #CALC! ошибка
Теперь давайте посмотрим на несколько удивительных примеров функции Filter и на то, что она может делать, что раньше было довольно сложным в ее отсутствие.
Нажмите здесь, чтобы загрузить файл с примером, и следуйте инструкциям.
Пример 1. Фильтрация данных по одному критерию (регион)
Предположим, у вас есть набор данных, показанный ниже, и вы хотите отфильтровать все записи только для США.
Ниже приведена формула ФИЛЬТРА, которая сделает это:
= ФИЛЬТР ($ A $ 2: $ C $ 11, $ B $ 2: $ B $ 11 = "США")
В приведенной выше формуле набор данных используется в качестве массива, а условие — $ B $ 2: $ B $ 11 = «США».
Это условие заставит функцию FILTER проверять каждую ячейку в столбце B (ту, которая имеет область), и будут отфильтрованы только те записи, которые соответствуют этому критерию.
Кроме того, в этом примере у меня есть исходные данные и отфильтрованные данные на одном листе, но вы также можете иметь их на отдельных листах или даже в книгах.
Функция фильтра возвращает результат, который является динамическим массивом (что означает, что вместо возврата одного значения она возвращает массив, который распространяется на другие ячейки).
Чтобы это работало, вам нужно иметь область, где результат будет пустым. В любой из ячеек в этой области (E2: G5 в этом примере) что-то уже есть, функция выдаст вам ошибку #SPILL.
Кроме того, поскольку это динамический массив, вы не можете изменить часть результата. Вы можете удалить весь диапазон, в котором есть результат, или ячейку E2 (где была введена формула). В обоих случаях будет удален весь результирующий массив. Но вы не можете изменить какую-либо отдельную ячейку (или удалить ее).
В приведенной выше формуле я жестко запрограммировал значение региона, но вы также можете поместить его в ячейку, а затем ссылаться на эту ячейку, которая имеет значение региона.
Например, в приведенном ниже примере у меня есть значение региона в ячейке I2, и оно затем упоминается в формуле:
= ФИЛЬТР ($ A $ 2: $ C $ 11, $ B $ 2: $ B $ 11 = I1)
Это делает формулу еще более полезной, и теперь вы можете просто изменить значение региона в ячейке I2, и фильтр автоматически изменится.
У вас также может быть раскрывающийся список в ячейке I2, где вы можете просто сделать выбор, и он мгновенно обновит отфильтрованные данные.
Пример 2: Фильтрация данных на основе одного критерия (больше или меньше)
Вы также можете использовать операторы сравнения в функции фильтрации и извлекать все записи, которые больше или меньше определенного значения.
Например, предположим, что у вас есть набор данных, показанный ниже, и вы хотите отфильтровать все записи, в которых значение продаж превышает 10000.
Следующая формула может сделать это:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ C $ 2: $ C $ 11> 10000))
Аргумент массива относится ко всему набору данных, а условие в этом случае — ($ C $ 2: $ C $ 11> 10000).
Формула проверяет каждую запись на наличие значения в столбце C. Если значение больше 10000, оно фильтруется, иначе игнорируется.
Если вы хотите получить все записи менее 10000, вы можете использовать следующую формулу:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ C $ 2: $ C $ 11 <10000))
Вы также можете проявить больше творчества с формулой ФИЛЬТР. Например, если вы хотите отфильтровать первые три записи на основе продажной стоимости, вы можете использовать следующую формулу:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ C $ 2: $ C $ 11> = БОЛЬШОЙ (C2: C11,3)))
В приведенной выше формуле используется функция НАИБОЛЬШИЙ, чтобы получить третье по величине значение в наборе данных. Это значение затем используется в критериях функции ФИЛЬТР для получения всех записей, в которых значение продаж больше или равно третьему по величине значению.
Нажмите здесь, чтобы загрузить файл с примером, и следуйте инструкциям.
Пример 3: Фильтрация данных с использованием нескольких критериев (И)
Предположим, у вас есть приведенный ниже набор данных, и вы хотите отфильтровать все записи для США, где стоимость продажи превышает 10000.
Это условие И, при котором вам нужно проверить две вещи — регион должен быть в США, а объем продаж должен быть более 10000. Если выполняется только одно условие, результаты не должны фильтроваться.
Ниже приведена формула FILTER, которая фильтрует записи с США в качестве региона и продажами более 10000:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ B $ 2: $ B $ 11 = "US") * ($ C $ 2: $ C $ 11> 10000))
Обратите внимание, что критерий (называемый аргументом включения): ($ B $ 2: $ B $ 11 = «US») * ($ C $ 2: $ C $ 11> 10000)
Поскольку я использую два условия, и мне нужно, чтобы оба были истинными, я использовал оператор умножения, чтобы объединить эти два критерия. Это возвращает массив из 0 и 1, где 1 возвращается только при выполнении обоих условий.
Если нет записей, соответствующих критериям, функция вернет #CALC! ошибка.
И если вы хотите вернуть что-то значение (вместо ошибки), вы можете использовать формулу, как показано ниже:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ B $ 2: $ B $ 11 = «США») * ($ C $ 2: $ C $ 11> 10000), «Ничего не найдено»)
Здесь я использовал «Не найдено» в качестве третьего аргумента, который используется, когда не найдено записей, соответствующих критериям.
Пример 4: Фильтрация данных с использованием нескольких критериев (ИЛИ)
Вы также можете изменить аргумент «include» в функции FILTER, чтобы проверять критерий ИЛИ (где любое из заданных условий может быть истинным).
Например, предположим, что у вас есть набор данных, показанный ниже, и вы хотите отфильтровать записи, в которых страна находится либо в США, либо в Канаде.
Ниже приведена формула, которая сделает это:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ B $ 2: $ B $ 11 = "США") + ($ B $ 2: $ B $ 11 = "Канада"))
Обратите внимание, что в приведенной выше формуле я просто добавил два условия с помощью оператора сложения. Поскольку каждое из этих условий возвращает массив значений ИСТИНА и ЛОЖЬ, я могу добавить, чтобы получить объединенный массив, в котором оно будет ИСТИНА, если выполняется какое-либо из условий.
Другим примером может быть случай, когда вы хотите отфильтровать все записи, в которых страна либо США, либо стоимость продажи превышает 10000.
Приведенная ниже формула сделает это:
= ФИЛЬТР ($ A $ 2: $ C $ 11, ($ B $ 2: $ B $ 11 = "США") + (C2: C11> 10000))
Примечание. При использовании критерия И в функции ФИЛЬТР используйте оператор умножения (*), а при использовании критерия ИЛИ используйте оператор сложения (+).
Пример 5: Фильтрация данных для получения записей выше / ниже среднего
Вы можете использовать формулы в функции ФИЛЬТР для фильтрации и извлечения записей, значение которых выше или ниже среднего.
Например, предположим, что у вас есть набор данных, показанный ниже, и вы хотите отфильтровать все записи, в которых стоимость продажи выше среднего.
Вы можете сделать это, используя следующую формулу:
= ФИЛЬТР ($ A $ 2: $ C $ 11, C2: C11> СРЕДНИЙ (C2: C11))
Аналогичным образом, для значений ниже среднего вы можете использовать следующую формулу:
= ФИЛЬТР ($ A $ 2: $ C $ 11, C2: C11<>
Нажмите здесь, чтобы загрузить файл с примером, и следуйте инструкциям.
Пример 6: Фильтрация только записей ЧЕТНЫХ чисел (или записей НЕЧЕТНЫХ чисел)
Если вам нужно быстро отфильтровать и извлечь все записи из строк с четными или нечетными числами, вы можете сделать это с помощью функции FILTER.
Для этого вам необходимо проверить номер строки в функции ФИЛЬТР и отфильтровать только номера строк, которые соответствуют критериям номера строки.
Предположим, у вас есть набор данных, как показано ниже, и я хочу извлечь только четные записи из этого набора данных.
Ниже приведена формула, которая сделает это:
= ФИЛЬТР ($ A $ 2: $ C $ 11, MOD (СТРОКА (A2: A11) -1,2) = 0)
В приведенной выше формуле функция MOD используется для проверки номера строки каждой записи (который задается функцией ROW).
Формула MOD (ROW (A2: A11) -1,2) = 0 возвращает ИСТИНА, если номер строки четный, и ЛОЖЬ, если он нечетный. Обратите внимание, что я вычел 1 из части ROW (A2: A11), поскольку первая запись находится во второй строке, и это регулирует номер строки, чтобы рассматривать вторую строку как первую запись.
Точно так же вы можете отфильтровать все записи с нечетными номерами, используя следующую формулу:
= ФИЛЬТР ($ A $ 2: $ C $ 11, MOD (СТРОКА (A2: A11) -1,2) = 1)
Пример 7: Сортировка отфильтрованных данных с помощью формулы
Использование функции ФИЛЬТР с другими функциями позволяет нам сделать гораздо больше.
Например, если вы фильтруете набор данных с помощью функции FILTER, вы можете использовать с ним функцию SORT, чтобы получить уже отсортированный результат.
Предположим, у вас есть набор данных, показанный ниже, и вы хотите отфильтровать все записи, в которых значение продаж превышает 10000. Вы можете использовать функцию SORT вместе с функцией, чтобы убедиться, что полученные данные отсортированы на основе стоимости продажи.
Приведенная ниже формула сделает это:
= СОРТИРОВАТЬ (ФИЛЬТР ($ A $ 2: $ C $ 11; ($ C $ 2: $ C $ 11> 10000)); 3; -1)
Вышеупомянутая функция использует функцию FILTER для получения данных, в которых значение продажи в столбце C превышает 10000. Этот массив, возвращаемый функцией FILTER, затем используется в функции SORT для сортировки этих данных на основе значения продаж.
Второй аргумент в функции SORT — 3, что соответствует сортировке по третьему столбцу. И четвертый аргумент — -1, который должен отсортировать эти данные в порядке убывания.
Нажмите здесь, чтобы загрузить файл примера
Итак, это 7 примеров использования функции ФИЛЬТР в Excel.
Надеюсь, вы нашли этот урок полезным!
Вам также могут понравиться следующие руководства по Excel:
- Как фильтровать ячейки с помощью полужирного шрифта в Excel
- Поле поиска динамического фильтра Excel
- Как фильтровать данные в сводной таблице в Excel
Главный недостаток стандартного
фильтра
(
Данные/ Сортировка и фильтр/ Фильтр
) – это отсутствие визуальной информации о примененном в данный момент фильтре: необходимо каждый раз лезть в меню фильтра, чтобы вспомнить критерии отбора записей. Особенно это неудобно, когда применено несколько критериев. Расширенный фильтр лишен этого недостатка – все критерии помещаются в виде отдельной таблички над фильтруемыми записями.
Алгоритм создания
Расширенного фильтра
прост:
- Создаем таблицу, к которой будет применяться фильтр (исходная таблица);
- Создаем табличку с критериями (с условиями отбора);
-
Запускаем
Расширенный фильтр
.
Пусть в диапазоне
A
7:С
83
имеется исходная таблица с перечнем товаров, содержащая поля (столбцы)
Товар
,
Количество
и
Цена
(см. файл примера ). Таблица не должна содержать пустых строк и столбцов, иначе
Расширенный фильтр
(да и обычный
Автофильтр
) не будет правильно работать.
Задача 1 (начинается…)
Настроим фильтр для отбора строк, которые содержат в наименовании Товара значения
начинающиеся
со слова
Гвозди
. Этому условию отбора удовлетворяют строки с товарами
гвозди 20 мм
,
Гвозди 10 мм
,
Гвозди 10 мм
и
Гвозди
.
Табличку с условием отбора разместим разместим в диапазоне
А
1
:А2
. Табличка должна содержать также название заголовка столбца, по которому будет производиться отбор. В качестве критерия в ячейке
А2
укажем слово
Гвозди
.
Примечание
: Структура критериев у
Расширенного фильтра
четко определена и она совпадает со структурой критериев для функций БДСУММ() , БСЧЁТ() и др.
Обычно критерии
Расширенного фильтра
размещают над таблицей, к которой применяют фильтр, но можно их разместить и сбоку таблицы. Избегайте размещения таблички с критериями под исходной таблицей, хотя это не запрещено, но не всегда удобно, т.к. в исходную таблицу могут добавляться новые строки.
ВНИМАНИЕ!
Убедитесь, что между табличкой со значениями условий отбора и исходной таблицей имеется, по крайней мере, одна пустая строка (это облегчит работу с
Расширенным фильтром
).
Теперь все подготовлено для работы с
Расширенным фильтром:
- выделите любую ячейку таблицы (это не обязательно, но позволит ускорить заполнение параметров фильтра);
-
вызовите
Расширенный фильтр
( Данные/ Сортировка и фильтр/ Дополнительно ); -
в поле
Исходный диапазон
убедитесь, что указан диапазон ячеек таблицы вместе с заголовками (
A
7:С
83
); -
в поле
Диапазон условий
укажите ячейки содержащие табличку с критерием, т.е. диапазон
А
1
:А2
.
При желании можно отобранные строки скопировать в другую таблицу, установив переключатель в позицию
Скопировать результат в другое место
. Но мы это здесь делать не будем.
Нажмите кнопку ОК и фильтр будет применен — в таблице останутся только строки содержащие в столбце Товар наименования
гвозди 20 мм
,
Гвозди 10 мм
,
Гвозди 50 мм
и
Гвозди
. Остальные строки будут скрыты.
Номера отобранных строк будут выделены синим шрифтом.
Чтобы отменить действие фильтра выделите любую ячейку таблицы и нажмите
CTRL+SHIFT+L
(к заголовку будет применен
Автофильтр
, а действие
Расширенного фильтра
будет отменено) или нажмите кнопку меню
Очистить
( Данные/ Сортировка и фильтр/ Очистить ).
Задача 2 (точно совпадает)
Настроим фильтр для отбора строк, у которых в столбце Товар
точно
содержится слово
Гвозди
. Этому условию отбора удовлетворяют строки только с товарами
гвозди
и
Гвозди
(
Регистр
не учитывается). Значения
гвозди 20 мм
,
Гвозди 10 мм
,
Гвозди 50 мм
учтены не будут.
Табличку с условием отбора разместим разместим в диапазоне
B1:В2
. Табличка должна содержать также название заголовка столбца, по которому будет производиться отбор. В качестве критерия в ячейке
B2
укажем формулу =»=
Гвозди»
.
Теперь все подготовлено для работы с
Расширенным фильтром:
- выделите любую ячейку таблицы (это не обязательно, но позволит ускорить заполнение параметров фильтра);
-
вызовите
Расширенный фильтр ( Данные/ Сортировка и фильтр/ Дополнительно );
-
в поле
Исходный диапазон
убедитесь, что указан диапазон ячеек таблицы вместе с заголовками (
A
7:С
83
); -
в поле
Диапазон условий
укажите ячейки содержащие табличку с критерием, т.е. диапазон
B1
:B2
. - Нажмите ОК
Применять
Расширенный фильтр
с такими простыми критериями особого смысла нет, т.к. с этими задачами легко справляется
Автофильтр
. Рассмотрим более сложные задачи по фильтрации.
Если в качестве критерия указать не =»=Гвозди» , а просто
Гвозди
, то, будут выведены все записи содержащие наименования
начинающиеся
со слова Гвозди (
Гвозди 80мм
,
Гвозди2
). Чтобы вывести строки с товаром,
содержащие
на слово
гвозди
, например,
Новые гвозди
, необходимо в качестве критерия указать =»=*Гвозди» или просто *
Гвозди, где
* является
подстановочным знаком
и означает любую последовательность символов.
Задача 3 (условие ИЛИ для одного столбца)
Настроим фильтр для отбора строк, у которых в столбце Товар содержится значение начинающееся со слова
Гвозди
ИЛИ
Обои
.
Критерии отбора в этом случае должны размещаться под соответствующим заголовком столбца (
Товар
) и должны располагаться
друг под другом
в одном столбце (см. рисунок ниже). Табличку с критериями размести в диапазоне
С1:С3
.
Окно с параметрами Расширенного фильтра и таблица с отфильтрованными данными будет выглядеть так.
После нажатия ОК будут выведены все записи, содержащие в столбце
Товар
продукцию
Гвозди
ИЛИ
Обои
.
Задача 4 (условие И)
Произведем отбор только тех строк таблицы, которые
точно
содержат в столбце
Товар
продукцию
Гвозди
, а в столбце
Количество
значение >40. Критерии отбора в этом случае должны размещаться под соответствующими заголовками (Товар и Количество) и должны располагаться
на одной строке
. Условия отбора должны быть записаны в специальном формате: =»=
Гвозди»
и =»>40″ . Табличку с условием отбора разместим разместим в диапазоне
E1:F2
.
После нажатия кнопки ОК будут выведены все записи содержащие в столбце
Товар
продукцию
Гвозди
с количеством >40.
СОВЕТ:
При изменении критериев отбора лучше каждый раз создавать табличку с критериями и после вызова фильтра лишь менять ссылку на них.
Примечание
: Если пришлось очистить параметры Расширенного фильтра ( Данные/ Сортировка и фильтр/ Очистить ), то перед вызовом фильтра выделите любую ячейку таблицы – EXCEL автоматически вставит ссылку на диапазон занимаемый таблицей (при наличии пустых строк в таблице вставится ссылка не на всю таблицу, а лишь до первой пустой строки).
Задача 5 (условие ИЛИ для разных столбцов)
Предыдущие задачи можно было при желании решить обычным
автофильтром
. Эту же задачу обычным фильтром не решить.
Произведем отбор только тех строк таблицы, которые
точно
содержат в столбце
Товар
продукцию
Гвозди
, ИЛИ которые в столбце
Количество
содержат значение >40. Критерии отбора в этом случае должны размещаться под соответствующими заголовками (Товар и Количество) и должны располагаться
на разных строках
. Условия отбора должны быть записаны в специальном формате: =»>40″ и =»=
Гвозди»
. Табличку с условием отбора разместим разместим в диапазоне
E4:F6
.
После нажатия кнопки ОК будут выведены записи содержащие в столбце
Товар
продукцию
Гвозди
ИЛИ значение >40 (у любого товара).
Задача 6 (Условия отбора, созданные в результате применения формулы)
Настоящая мощь
Расширенного фильтра
проявляется при использовании в качестве условий отбора формул.
Существует две возможности задания условий отбора строк:
- непосредственно вводить значения для критерия (см. задачи выше);
- сформировать критерий на основе результатов выполнения формулы.
Рассмотрим критерии задаваемые формулой. Формула, указанная в качестве критерия отбора, должна возвращать результат ИСТИНА или ЛОЖЬ.
Например, отобразим строки, содержащие Товар, который встречается в таблице только 1 раз. Для этого:
-
введем в ячейку
H2
формулу =СЧЁТЕСЛИ(Лист1!$A$8:$A$83;A8)=1 -
в
Н1
вместо заголовка
введем поясняющий текст, например,
Неповторяющиеся значения
. Поясняющий текст НЕ должен совпадать ни с одним заголовком столбца таблицы! В противном случае фильтр будет работать неправильно.
Применим
Расширенный фильтр
, указав в качестве диапазона условий ячейки
Н1:Н2
.
Обратите внимание на то, что диапазон поиска значений введен с использованием
абсолютных ссылок
, а критерий в функции СЧЁТЕСЛИ() – с относительной ссылкой. Это необходимо, поскольку при применении
Расширенного фильтра
EXCEL увидит, что
А8
— это относительная ссылка и будет перемещаться вниз по столбцу Товар по одной записи за раз и возвращать значение либо ИСТИНА, либо ЛОЖЬ. Если будет возвращено значение ИСТИНА, то соответствующая строка таблицы будет отображена. Если возвращено значение ЛОЖЬ, то строка после применения фильтра отображена не будет.
СОВЕТ:
Для проверки работоспособности формулы можно создать дополнительный столбец рядом с таблицей (например в F) и ввести указанную выше формулу в ячейку F8, а затем скопировать ее вниз. Будет сформирован столбец со значениями ИСТИНА/ЛОЖЬ, который поможет определить как работает ваша формула.
Примеры других формул из файла примера :
-
Вывод строк с ценами больше, чем 3-я по величине цена в таблице. =C8>НАИБОЛЬШИЙ( $С$8:$С$83 ;5) В этом примере четко проявляется коварство функции НАИБОЛЬШИЙ(). Если отсортировать столбец
С
(цены), то получим: 750; 700;
700
; 700; 620, 620, 160, … В человеческом понимании «3-ей по величине цене» соответствует 620, а в понимании функции НАИБОЛЬШИЙ() –
700
. В итоге, будет выведено не 4 строки, а только одна (750); -
Вывод строк с учетом РЕгиСТра =СОВПАД(«гвозди»;А8) . Будут выведены только те строки, в которых товар
гвозди
введен с использованием строчных букв; - Вывод строк, у которых цена выше среднего =С8>СРЗНАЧ($С$8:$С$83) ;
ВНИМАНИЕ!
Применение
Расширенного фильтра
отменяет примененный к таблице фильтр (
Данные/ Сортировка и фильтр/ Фильтр
).
Задача 7 (Условия отбора содержат формулы и обычные критерии)
Рассмотрим теперь другую таблицу из файла примера на листе Задача 7 .
В столбце
Товар
приведено название товара, а в столбце
Тип товара
— его тип.
Задача состоит в том, чтобы для заданного типа товара вывести товары, у которых цена ниже средней. То есть у нас 3 критерия: первый критерий задает Товар, 2-й — его Тип, а 3-й критерий (в виде формулы) задает цену ниже средней.
Критерии разместим в строках 6 и 7. Введем нужные Товар и Тип товара. Для заданного Тип товара вычислим среднее и выведем ее для наглядности в отдельную ячейку F7. В принципе, формулу можно ввести прямо в формулу-критерий в ячейку С7. Поясняющий текст в ячейке над формулой (С6) НЕ должен совпадать ни с одним заголовком столбца таблицы! В противном случае фильтр будет работать неправильно.
Далее действуем как обычно: выделяем любую ячейку таблицы, вызываем
Расширенный фильтр (Advanced Filter)
и указываем диапазон с критериями.
Будут выведены 2 товара из 4-х (заданного типа товара).
В файле примера для удобства использовано
Условное форматирование
: выделяются строки удовлетворяющие первым 2-м критериям (подробнее см. статью
Выделение строк таблицы в MS EXCEL в зависимости от условия в ячейке
).
Задача 7.1. (Совпадают ли 2 значения в одной строке?)
Есть таблица, в которой указаны Год выпуска и Год покупки автомобиля.
Требуется вывести только те строки, в которых Год выпуска совпадает с Годом покупки. Это можно сделать с помощью элементарной формулы =В10=С10 .
Поясняющий текст в ячейке С6 НЕ должен совпадать ни с одним заголовком столбца таблицы! В противном случае фильтр будет работать неправильно.
Задача 8 (Является ли символ числом?)
Пусть у нас есть таблица с перечнем различных типов гвоздей.
Требуется отфильтровать только те строки, у которых в столбце Товар содержится
Гвозди 1 дюйм
,
Гвозди 2 дюйма
и т.д. товары
Гвозди нержавеющие, Гвозди хромированные
и т.д. не должны быть отфильтрованы.
Проще всего это сделать если в качестве фильтра задать условие, что после слова Гвозди должно идти цифра. Это можно сделать с помощью формулы =ЕЧИСЛО(—ПСТР(A11;ДЛСТР($A$8)+2;1))
Формула вырезает из наименования товара 1 символ после слова Гвозди (с учетом пробела). Если этот символ число (цифра), то формула возвращает ИСТИНА и строка выводится, в противном случае строка не выводится. В столбце F показано как работает формула, т.е. ее можно протестировать до запуска
Расширенного фильтра
.
Задача 9 (Вывести строки, в которых НЕ СОДЕРЖАТСЯ заданные Товары)
Требуется отфильтровать только те строки, у которых в столбце Товар НЕ содержатся:
Гвозди, Доска, Клей, Обои
.
Для этого придется использовать простую формулу =ЕНД(ВПР(A15;$A$8:$A$11;1;0))
Функция ВПР()
ищет в столбце Товар каждой строки наименования товаров, указанных в диапазоне
А8:А11
. Если эти товары НЕ найдены, ВПР() возвращает ошибку #Н/Д, которая обрабатывается
функцией ЕНД()
— в итоге, формула возвращает ИСТИНА и строка выводится.
Вывод уникальных строк
О выводе
уникальных
строк с помощью Расширенного фильтра можно
прочитать в этой статье
.
Функция ФИЛЬТР фильтрует диапазон данных и динамически возвращает совпадающие результаты в соответствии с указанными вами критериями.
Примечание: Функция ФИЛЬТР доступна только в Excel для Microsoft 365, Excel 2021 или более поздних версиях Excel, а также в Excel для Интернета.
Синтаксис
=FILTER(array, include, [if_empty])
аргументы
- массив (обязательно): Диапазон или массив для фильтрации.
- включить (обязательно): Логический тест, который возвращает массив логических значений (ИСТИНА или ЛОЖЬ), указывающих, должна ли соответствующая строка или столбец в массиве проходить через ФИЛЬТР.
- [if_empty] (необязательно): Возвращаемое значение, если во включенном массиве нет совпадающих результатов.
Возвращаемое значение
Функция ФИЛЬТР возвращает массив.
Примечания к функциям
- Массив может быть предоставлен в виде строки значений, столбца значений или комбинации строк и столбцов значений.
- Размеры включают должно быть равно значению массив аргумент.
- Чтобы добавить два или более критериев в включают, следует заключить каждый критерий в скобки и соединить их звездочкой (*).
- Результат, возвращаемый ФИЛЬТРОМ, будет распространяться на диапазон ячеек таким же образом, как ваши исходные данные. массив организован. Если одна или несколько ячеек в диапазоне сброса не пусты, #ПРОЛИВАТЬ! ошибка будет возвращена.
- Если какое-либо из значений, предоставленных в качестве аргумента включения, является ошибкой или не может быть преобразовано в логическое значение, FILTER вернет ошибку.
- Текстовые значения в включают or если_пусто аргументы должны быть заключены в двойные кавычки. В противном случае ФИЛЬТР вернет # ИМЯ? ошибка.
- Чтобы ничего не отображалось при отсутствии соответствующих данных, укажите пустую строку («») для если_пусто.
- ФИЛЬТР вернет #РАССЧЕТ! ошибка, если нет совпадающих данных и значения для если_пусто не предусмотрено.
- ФИЛЬТР можно использовать между разными книгами. Однако убедитесь, что указанные книги открыты. В противном случае #REF! ошибка будет возвращена, если вы обновите ячейку результата.
- Результаты FILTER являются динамическими, то есть автоматически обновляются при изменении значений в исходных данных. Однако результаты не будут обновлены, если вы добавите новые записи в массив. Чтобы исправить это, вы должны использовать структурированные ссылки как массив аргумент.
Пример
Предположим, у вас есть таблица учеников, как показано ниже, чтобы отфильтровать учеников из класса А и набрать более 60 баллов, скопируйте или введите приведенную ниже формулу в верхнюю левую ячейку таблицы результатов, а затем нажмите Enter чтобы получить результат:
=ФИЛЬТР(B3: E14,(B3:B14=»Class A»)*(E3:E14>60),«НЕТ ЗАПИСЕЙ»)
Или используйте ссылки на ячейки, чтобы сделать формулу динамической:
=ФИЛЬТР(B3: E14,(B3:B14=H3)*(E3:E14>J3),«НЕТ ЗАПИСЕЙ»)
Пример отсутствия совпадений
Предположим, вы хотите отфильтровать учащихся из класса А и набрать менее 60 баллов (очевидно, нет баллов меньше 60), чтобы отобразить результаты как ничего или определенную текстовую строку, вы можете скопировать приведенные ниже формулы и Нажмите Enter чтобы увидеть результаты.
=ФИЛЬТР(B3: E14,(B3:B14=»Class A»)*(E3:E14<60),«») >>> Возврат ничего
=ФИЛЬТР(B3: E14,(B3:B14=»Class A»)*(E3:E14<60),«НЕТ ЗАПИСЕЙ») >>> Возврат НЕТ ЗАПИСЕЙ
Связанные функции
Функция Excel СОРТИРОВАТЬ ПО
Функция SORTBY сортирует содержимое одного диапазона или массива на основе значений в соответствующем диапазоне или массиве, независимо от того, включен ли соответствующий диапазон или массив в диапазон или массив для сортировки или нет.
УНИКАЛЬНАЯ функция Excel
Функция UNIQUE извлекает уникальные значения из диапазона данных. Данные могут включать текст, числа, даты, значения ошибок и т. д.
Лучшие инструменты для работы в офисе
Kutools for Excel — Помогает вам выделиться из толпы
Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.
- Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
- Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
- Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
- 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.
Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)
- Одна секунда для переключения между десятками открытых документов!
- Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
- Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.
Комментарии (0)
Оценок пока нет. Оцените первым!
Вывести на экран информацию по одному / нескольким параметрам можно с помощью фильтрации данных в Excel.
Для этой цели предназначено два инструмента: автофильтр и расширенный фильтр. Они не удаляют, а скрывают данные, не подходящие по условию. Автофильтр выполняет простейшие операции. У расширенного фильтра гораздо больше возможностей.
Автофильтр и расширенный фильтр в Excel
Имеется простая таблица, не отформатированная и не объявленная списком. Включить автоматический фильтр можно через главное меню.
- Выделяем мышкой любую ячейку внутри диапазона. Переходим на вкладку «Данные» и нажимаем кнопку «Фильтр».
- Рядом с заголовками таблицы появляются стрелочки, открывающие списки автофильтра.
Если отформатировать диапазон данных как таблицу или объявить списком, то автоматический фильтр будет добавлен сразу.
Пользоваться автофильтром просто: нужно выделить запись с нужным значением. Например, отобразить поставки в магазин №4. Ставим птичку напротив соответствующего условия фильтрации:
Сразу видим результат:
Особенности работы инструмента:
- Автофильтр работает только в неразрывном диапазоне. Разные таблицы на одном листе не фильтруются. Даже если они имеют однотипные данные.
- Инструмент воспринимает верхнюю строчку как заголовки столбцов – эти значения в фильтр не включаются.
- Допустимо применять сразу несколько условий фильтрации. Но каждый предыдущий результат может скрывать необходимые для следующего фильтра записи.
У расширенного фильтра гораздо больше возможностей:
- Можно задать столько условий для фильтрации, сколько нужно.
- Критерии выбора данных – на виду.
- С помощью расширенного фильтра пользователь легко находит уникальные значения в многострочном массиве.
Как сделать расширенный фильтр в Excel
Готовый пример – как использовать расширенный фильтр в Excel:
- Создадим таблицу с условиями отбора. Для этого копируем заголовки исходного списка и вставляем выше. В табличке с критериями для фильтрации оставляем достаточное количество строк плюс пустая строка, отделяющая от исходной таблицы.
- Настроим параметры фильтрации для отбора строк со значением «Москва» (в соответствующий столбец таблички с условиями вносим = «=Москва»). Активизируем любую ячейку в исходной таблице. Переходим на вкладку «Данные» — «Сортировка и фильтр» — «Дополнительно».
- Заполняем параметры фильтрации. Исходный диапазон – таблица с исходными данными. Ссылки появляются автоматически, т.к. была активна одна из ячеек. Диапазон условий – табличка с условием.
- Выходим из меню расширенного фильтра, нажав кнопку ОК.
В исходной таблице остались только строки, содержащие значение «Москва». Чтобы отменить фильтрацию, нужно нажать кнопку «Очистить» в разделе «Сортировка и фильтр».
Как пользоваться расширенным фильтром в Excel
Рассмотрим применение расширенного фильтра в Excel с целью отбора строк, содержащих слова «Москва» или «Рязань». Условия для фильтрации должны находиться в одном столбце. В нашем примере – друг под другом.
Заполняем меню расширенного фильтра:
Получаем таблицу с отобранными по заданному критерию строками:
Выполним отбор строк, которые в столбце «Магазин» содержат значение «№1», а в столбце стоимость – «>1 000 000 р.». Критерии для фильтрации должны находиться в соответствующих столбцах таблички для условий. На одной строке.
Заполняем параметры фильтрации. Нажимаем ОК.
Оставим в таблице только те строки, которые в столбце «Регион» содержат слово «Рязань» или в столбце «Стоимость» — значение «>10 000 000 р.». Так как критерии отбора относятся к разным столбцам, размещаем их на разных строках под соответствующими заголовками.
Применим инструмент «Расширенный фильтр»:
Данный инструмент умеет работать с формулами, что дает возможность пользователю решать практически любые задачи при отборе значений из массивов.
Основные правила:
- Результат формулы – это критерий отбора.
- Записанная формула возвращает результат ИСТИНА или ЛОЖЬ.
- Исходный диапазон указывается посредством абсолютных ссылок, а критерий отбора (в виде формулы) – с помощью относительных.
- Если возвращается значение ИСТИНА, то строка отобразится после применения фильтра. ЛОЖЬ – нет.
Отобразим строки, содержащие количество выше среднего. Для этого в стороне от таблички с критериями (в ячейку I1) введем название «Наибольшее количество». Ниже – формула. Используем функцию СРЗНАЧ.
Выделяем любую ячейку в исходном диапазоне и вызываем «Расширенный фильтр». В качестве критерия для отбора указываем I1:I2 (ссылки относительные!).
В таблице остались только те строки, где значения в столбце «Количество» выше среднего.
Чтобы оставить в таблице лишь неповторяющиеся строки, в окне «Расширенного фильтра» поставьте птичку напротив «Только уникальные записи».
Скачать пример работы с расширенным фильтром
Нажмите ОК. Повторяющиеся строки будут скрыты. На листе останутся только уникальные записи.