Расширенный фильтр в Excel как сделать и как им пользоваться

Расширенный фильтр в Excel: как сделать и как им пользоваться

Многие пользователи ПК хорошо знакомы с пакетом продуктов для работы с различного рода документами под названием Microsoft Office. Среди программ этой компании есть MS Excel. Данная утилита предназначена для работы с электронными таблицами.

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

Что это за функция? Описание

Что значит расширенный фильтр в Excel? Это функция, которая позволяет разграничивать выбранные данные (по столбцам в «Экселе») относительно введенных требований.

К примеру, если у нас есть электронная таблица со сведениями обо всех учениках школы (рост, вес, класс, пол и т. п.), то мы с легкостью сможем выделить среди них, скажем, всех мальчиков с ростом 160 из 8-го класса. Сделать это можно, используя функцию «Расширенный фильтр» в Excel. О ней мы и будем детально рассказывать далее.

Что значит автофильтр?

Какие особенности имеет обычный и расширенный фильтр? Сначала расскажем про первый. Автофильтр (обычный) предназначен для разграничения данных по заранее известным критериям, количество которых определено. Его используют, когда имеется электронная таблица незначительных размеров, по столбцам и заданным параметрам. Если нам необходимо задать неограниченное количество критериев для фильтрации, необходимо выбирать расширенный.

Как делать правильно?

Как сделать расширенный фильтр в Excel? Чтобы было понятно, каким образом происходит процедура и как она делается, рассмотрим пример.

Инструкция по расширенной фильтрации электронной таблицы:

  1. Необходимо создать место выше основной таблицы. Там и будут располагаться результаты фильтрации. Должно быть достаточное количества места для готовой таблицы. Также требуется еще одна строка. Она будет разделять отфильтрованную таблицу от основной.
  2. В самую первую строку освобожденного места скопировать всю шапку (названия колонок) основной таблицы.
  3. Ввести необходимые данные для фильтрации в нужный столбец. Отметим, что запись должна выглядеть следующим образом: = «= фильтруемое значение».
  4. Теперь необходимо пройти в раздел «Данные». В области фильтрации (значок в виде воронки) выбрать «Дополнительно» (находится в конце правого списка от соответствующего знака).
  5. Далее во всплывшем окошке нужно ввести параметры расширенного фильтра в Excel. «Диапазон условий» и «Исходный диапазон» заполняются автоматически, если была выделена ячейка начала рабочей таблицы. Иначе их придется вводить самостоятельно.
  6. Нажать на Ок. Произойдет выход из настроек параметров расширенной фильтрации.

После проделанных шагов в основной таблице останутся только записи по заданному разграничивающему значению. Чтобы отменить последнее действие (фильтрацию), нужно нажать на кнопку «Очистить», которая находится в разделе «Данные».

Работа с расширенным фильтром в "Экселе"

Как пользоваться расширенным фильтром в Excel? Для того чтобы понять, обратимся к данной функции повторно. Предположим у нас в электронной таблице есть колонка с городами. До этого мы уже делали расширенную фильтрацию на город Ростов. Теперь же хотим в этом же документе добавить к полученным по городу Ростову еще и те записи, которые соответствуют городу Самаре.

Для этого необходимо:

  1. Разместить условия разграничения (=»-Самара») под предыдущим запросом (=»=Ростов»).
  2. Вызвать меню расширенного фильтра (раздел «Данные», вкладка «Фильтрация и сортировка», выбрать в ней «Дополнительно»).
  3. Нажать Ок. После этого расширенная фильтрация закроется в Excel. А на экране появится готовая таблица, состоящая из записей, в которых указан город Самара или Ростов.

При работе следует учитывать следующий очень важный момент. Все введенные критерии должны находиться только в тех столбцах, по которым идет фильтрование. Выше основной таблицы.

После того как был изучен основной метод расширенной фильтрации, можно приступать к изучению всех возможностей данной функции. Имеется в виду именно использование формул.

Расширенная фильтрация. Основные правила использования при работе "Экселе"

  • Критериями отбора называются результаты исходной формулы.
  • Результатом могут быть только два значения: «ИСТИНА» или «ЛОЖЬ».
  • При помощи абсолютных ссылок указывается исходный диапазон фильтруемой таблицы.
  • В результатах формулы будут показаны только те строки, которые получают по итогу значение «ИСТИНА». Значения строк, которые получили по итогу формулы «ЛОЖЬ», не будут высвечиваться.

При помощи этих правил можно создавать любые формулы с допустимыми операндами и значениями.

Пример в "Экселе 2010"

Рассмотрим пример расширенного фильтра в Excel 2010 и использования в нем формул. К примеру, разграничим значения какого-нибудь столбца с числовыми данными по результату среднего значения (больше или меньше).

Инструкция для работы с расширенным фильтром в Excel по среднему значению колонки:

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

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

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

Внимание! При работе записи, которые не прошли критерий фильтрации, не удаляются. Они просто не показываются (не отображаются). Расширенная фильтрация предназначена для того, чтобы можно было скопировать результат и вставить его куда-нибудь в другое место. После этого необходимо нажать на «Очистить» в разделе «Фильтрация и сортировка». Тогда ваша исходная таблица вернется на экран.

Автофильтр. Пример использования

Автофильтр — это обычный инструмент. Его можно применить, исключительно задав точные параметры. Например, вывести все значения таблицы, которые превышают значения 1000 (< 1000), или показать точные данные, как было рассмотрено в примере с городами.

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

Плюсы и минусы расширенного фильтра в программе "Эксель"

Так как расширенная фильтрация — это дополнение к обычной, то в ее использовании есть свои преимущества и недостатки. Их мы сейчас и рассмотрим.

Плюсы расширенной фильтрации:

  • можно использовать формулы.

Минусы расширенной фильтрации:

  • чтобы проделать данную операцию, необходимо потратить больше времени на разбирательство с введением диапазона и исходных данных;
  • для использования расширенного фильтрования с применением формул необходимо знать и уметь пользоваться правилами логики и составления уравнений MS Excel.

Несмотря на наличие минусов, эта функция имеет все же большее количество возможностей, нежели просто автофильтрация. Хотя при последней нет необходимости вводить что-то свое, кроме критерия, по которому будет проводиться выявление значений.

Фильтрация по двум отдельным критериям. Как правильно ее сделать?

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

  1. Создать место для ввода параметра фильтрования. Удобнее всего оставлять это место над основной таблицей и не забывать копировать шапку (названия столбцов), чтобы не запутаться, в какую колонку вводить этот критерий.
  2. Ввести нужный показатель для фильтрации. Например, все записи, чьи значения столбца больше 1000 (> 1000).
  3. Пройти во вкладку «Данные». В разделе «Фильтрация и сортировка» выбрать пункт «Дополнительно».
  4. В открывшемся окошке указать диапазоны рассматриваемых значений и ячейку со значением рассматриваемого критерия.
  5. Нажать на Ок. После этого будет выведена отфильтрованная по заданному критерию таблица.
  6. Скопировать результат разграничения. Вставить отфильтрованную таблицу куда-нибудь в сторону на том же листе Excel. Можно воспользоваться другой страницей.
  7. Выбрать «Очистить». Данная кнопка находится во вкладке «Данные» в разделе «Фильтрация и сортировка». После ее нажатия отфильтрованная таблица вернутся в первоначальный вид. И можно будет работать с ней.
  8. Далее необходимо снова выделить свободное место для таблицы, которая будет отфильтрована.
  9. Потом нужно скопировать шапку (названия столбцов) основного поля и перенести их в первую строчку освобожденного под отфильтрованную структуру места.
  10. Пройти во вкладку «Данные». В разделе «Фильтрация и сортировка» выбрать «Дополнительно».
  11. В открывшемся окошке выбрать диапазон записей (столбцов), по которому будет проводиться фильтрация.
  12. Добавить адрес ячейки, в которой записан критерий разграничения, например, «город Одесса».
  13. Нажать на Ок. После этого произойдет фильтрация по значению «Одесса».
  14. Скопировать отфильтрованную таблицу и вставить ее либо на другой лист документа, либо на той же странице, но в стороне от основной.
  15. Снова нажать на «Очистить». Все, готово. Теперь у вас имеются три таблицы. Основная, отфильтрованная по одному значению (>1000), а также та, что отфильтрована по другому значению (Одесса).

Небольшое заключение

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

Источник

Расширенный фильтр в MS EXCEL

Главный недостаток стандартного фильтра ( Данные/ Сортировка и фильтр/ Фильтр ) – это отсутствие визуальной информации о примененном в данный момент фильтре: необходимо каждый раз лезть в меню фильтра, чтобы вспомнить критерии отбора записей. Особенно это неудобно, когда применено несколько критериев. Расширенный фильтр лишен этого недостатка – все критерии помещаются в виде отдельной таблички над фильтруемыми записями.

Алгоритм создания Расширенного фильтра прост:

  • Создаем таблицу, к которой будет применяться фильтр (исходная таблица);
  • Создаем табличку с критериями (с условиями отбора);
  • Запускаем Расширенный фильтр .

Пусть в диапазоне A 7:С 83 имеется исходная таблица с перечнем товаров, содержащая поля (столбцы) Товар , Количество и Цена (см. файл примера ). Таблица не должна содержать пустых строк и столбцов, иначе Расширенный фильтр (да и обычный Автофильтр ) не будет правильно работать.

Читайте также:  Как сделать шнек своими руками чертежи схема пошаговая инструкция

Задача 1 (начинается. )

Настроим фильтр для отбора строк, которые содержат в наименовании Товара значения начинающиеся со слова Гвозди . Этому условию отбора удовлетворяют строки с товарами гвозди 20 мм , Гвозди 10 мм , Гвозди 10 мм и Гвозди .

Табличку с условием отбора разместим разместим в диапазоне А 1 :А2 . Табличка должна содержать также название заголовка столбца, по которому будет производиться отбор. В качестве критерия в ячейке А2 укажем слово Гвозди .

Примечание : Структура критериев у Расширенного фильтра четко определена и она совпадает со структурой критериев для функций БДСУММ() , БСЧЁТ() и др.

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

ВНИМАНИЕ! Убедитесь, что между табличкой со значениями условий отбора и исходной таблицей имеется, по крайней мере, одна пустая строка (это облегчит работу с Расширенным фильтром ).

Теперь все подготовлено для работы с Расширенным фильтром:

  • выделите любую ячейку таблицы (это не обязательно, но позволит ускорить заполнение параметров фильтра);
  • вызовите Расширенный фильтр ( Данные/ Сортировка и фильтр/ Дополнительно );
  • в поле Исходный диапазон убедитесь, что указан диапазон ячеек таблицы вместе с заголовками ( A7:С83 );
  • в поле Диапазон условий укажите ячейки содержащие табличку с критерием, т.е. диапазон А1:А2 .

При желании можно отобранные строки скопировать в другую таблицу, установив переключатель в позицию Скопировать результат в другое место . Но мы это здесь делать не будем.

Нажмите кнопку ОК и фильтр будет применен — в таблице останутся только строки содержащие в столбце Товар наименования гвозди 20 мм , Гвозди 10 мм , Гвозди 50 мм и Гвозди . Остальные строки будут скрыты.

Номера отобранных строк будут выделены синим шрифтом.

Чтобы отменить действие фильтра выделите любую ячейку таблицы и нажмите CTRL+SHIFT+L (к заголовку будет применен Автофильтр , а действие Расширенного фильтра будет отменено) или нажмите кнопку меню Очистить ( Данные/ Сортировка и фильтр/ Очистить ).

Задача 2 (точно совпадает)

Настроим фильтр для отбора строк, у которых в столбце Товар точно содержится слово Гвозди . Этому условию отбора удовлетворяют строки только с товарами гвозди и Гвозди ( Регистр не учитывается). Значения гвозди 20 мм , Гвозди 10 мм , Гвозди 50 мм учтены не будут.

Табличку с условием отбора разместим разместим в диапазоне B1:В2 . Табличка должна содержать также название заголовка столбца, по которому будет производиться отбор. В качестве критерия в ячейке B2 укажем формулу .

Теперь все подготовлено для работы с Расширенным фильтром:

  • выделите любую ячейку таблицы (это не обязательно, но позволит ускорить заполнение параметров фильтра);
  • вызовите Расширенный фильтр ( Данные/ Сортировка и фильтр/ Дополнительно );
  • в поле Исходный диапазон убедитесь, что указан диапазон ячеек таблицы вместе с заголовками ( A7:С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 . Если эти товары НЕ найдены, ВПР() возвращает ошибку #Н/Д, которая обрабатывается функцией ЕНД() — в итоге, формула возвращает ИСТИНА и строка выводится.

Вывод уникальных строк

О выводе уникальных строк с помощью Расширенного фильтра можно прочитать в этой статье .

Источник

Использование расширенных условий фильтрации

Если для фильтрации данных требуются сложные условия (например, Type = «Produce» OR Salesperson = «Егоров»), можно использовать диалоговое окно Расширенный фильтр.

Чтобы открыть диалоговое окно Расширенный фильтр, щелкните Данные > Расширенные.

Группа

Продавец = «Егоров» ИЛИ Продавец = «Грачев»

Тип = «Фрукты» И Продажи > 1000

Тип = «Фрукты» ИЛИ Продавец = «Грачев»

(Продажи > 6000 И Продажи < 6500) ИЛИ (Продажи < 500)

(Продавец = «Егоров» И Продажи >3000) ИЛИ
(Salesperson = «Buchanan» AND Sales > 1500)

Продавец = имя со второй буквой «г»

Обзор

Действие команды Дополнительно отличается от действия команды Фильтр в некоторых важных аспектах.

Она отображает диалоговое окно Расширенный фильтр, а не меню «Автофильтр».

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

Образец данных

Этот пример данных используется для всех процедур, используемых в этой статье.

Данные включают четыре пустые строки над диапазоном списка, которые будут использоваться в качестве диапазона условия (A1:C4) и диапазон списка (A6:C10). Диапазон условий содержит названия столбцов и по крайней мере одну пустую строку между значениями условий и диапазоном списка.

Для работы с данными выберите их в таблице ниже, скопируйте, а затем вкопируйте в ячейку A1 нового листа Excel.

Операторы сравнения

Операторы сравнения используются для сравнения двух значений. Результатом сравнения является логическое значение: ИСТИНА либо ЛОЖЬ.

Оператор сравнения

>= (знак «больше или равно»)

Больше или равно

<= (знак «меньше или равно»)

Меньше или равно

Использование знака равенства для ввода текста или значения

Поскольку знак «равно»(=)используется для указать формулу при введите текст или значение в ячейку, Excel высмеет его. однако это может привести к непредвиденным результатам фильтрации. Чтобы указать оператор сравнения равенства для текста или значения, введите условия в качестве строкового выражения в соответствующей ячейке в диапазоне условий:

=»= ввод »

где ввод — искомый текст или значение. Например:

Вводится в ячейку

Вычисляется и отображается

Учет регистра

При фильтрации текстовых данных в Excel не учитывается регистр букв. Однако для поиска с учетом регистра можно воспользоваться формулой. Пример см. в разделе Условия с подстановочными знаками.

Использование заранее определенных имен

Вы можете назвать диапазон Условия,и ссылка на диапазон автоматически появится в поле Диапазон условия. Вы также можете определить имя База данных для отфильтрованного диапазона списка и имя Извлечь для области, в которой нужно вставки строк, и эти диапазоны автоматически появятся в полях Диапазон списка и Копировать в соответственно.

Создание условий с помощью формулы

В качестве условия можно использовать значение, вычисленное с помощью формулы. Обратите внимание на важные моменты, указанные ниже.

Формула должна возвращать результат ИСТИНА или ЛОЖЬ.

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

=»= ввод »

Не используйте название столбца в качестве названия условия. Либо оставьте название условия пустым, либо используйте название, не являющееся названием столбца в диапазоне списка (в последующих примерах: «Среднее арифметическое» и «Точное совпадение»).

Если в формуле используется название столбца, а не относительная ссылка на ячейку или имя диапазона, в ячейке с условием будет выведено значение ошибки #ИМЯ? или #ЗНАЧ!. Эту ошибку можно проигнорировать, так как она не влияет на то, как фильтруется диапазон списка.

В формуле, которая используется для условий, необходимо использовать относительную ссылку для ссылки на соответствующую ячейку в первой строке данных.

Все остальные ссылки в формуле должны быть абсолютными.

Несколько условий, один столбец, любое из условий истинно

Логическое выражение: (Продавец = «Егоров» ИЛИ Продавец = «Грачев»)

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

Чтобы найти строки, отвечающие нескольким условиям для одного столбца, введите условия непосредственно одно под другим в разных строках диапазона условий. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько условий, несколько столбцов, все условия истинны

Логическое выражение: (Тип = «Фрукты» И Продажи > 1000)

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

Чтобы найти строки, отвечающие нескольким условиям в нескольких столбцах, введите все условия в одной строке диапазона условий. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$2.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько условий, несколько столбцов, любое из условий истинно

Логическое логика: (Тип = «Фрукты» ИЛИ Продавец = «Грачев»)

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

Чтобы найти строки, отвечающие нескольким условиям в нескольких столбцах, где любое условие может быть истинным, введите эти условия в разных строках диапазона условий. Используя пример, введите:

Читайте также:  Действие No 1 Проверяем обновления Windows 10

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

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

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

Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько наборов условий, один столбец во всех наборах

Логическое выражение: ( (Продажи > 6000 И Продажи < 6500 ) ИЛИ (Продажи < 500) )

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

Чтобы найти строки, отвечающие нескольким наборам условий, каждый из которых содержит условия для одного столбца, используйте несколько столбцов с одинаковым заголовком. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

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

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

Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$D$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько наборов условий, несколько столбцов в каждом наборе

Логическое выражение: ( (Продавец = «Егоров» И Продажи > 3000) ИЛИ (Продавец = «Грачев» И Продажи > 1500) )

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

Чтобы найти строки, отвечающие нескольким наборам условий, каждый из которых содержит условия для нескольких столбцов, введите каждый набор условий в отдельных столбцах или строках. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3.Чтобы временно переместить диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условия, нажмите кнопку Свернуть .

Используя пример, получим следующий отфильтрованный результат для диапазона списка:

Условия с подстановочными знаками

Логическое выражение: Продавец = имя со второй буквой «г»

Чтобы найти текстовые значения с совпадающими знаками в некоторых из позиций, выполните одно или несколько действий, описанных ниже.

Чтобы найти строки, в которых текстовое значение в столбце начинается с определенной последовательности знаков, введите эти знаки, не используя знак равенства (=). Например, если ввести условие Бел, будут найдены строки с ячейками, содержащими слова «Белов», «Беляков» и «Белугин».

Воспользуйтесь подстановочными знаками.

Используйте

Чтобы найти

Любой символ
Например, если найти «кузнецов» и «смайл»

Любое количество символов
Например, если найти «*-восток», будут «северо-восток» и «Юго-восток».

(тильда), за которой следует ?, * или

Вопроси метка, звездочка или тильда
Например, fy91

? соответствует результат «ан91?»

Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.

В строках под названиями столбцов введите условия, которым должен соответствовать результат. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Группа

Выполните одно из следующих действий:

Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте

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

Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Источник



Статья: Как использовать индексированную таблицу значений (1С++)?

Индексированная таблица значений — класс в составе 1С++, разработанный ADirks.

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

Документация по этому классу находится по ссылке.

Рассмотрим использование индексированной таблице на практических примерах.

Удобной оказывается группировка строк при создании документов, обработке данных, выводе отчетов и проч.

Например, мы хотим по данным, полученным из запроса, создать документы.

В данном примере документы будут отличаться адресом доставки. Индекс можно делать и составным: «ИндДок:АдресДоставки,НомерЗаявки».

Пример использования индексированной таблицы значений для рекурсивного вывода в отчете с группировками находится в статье.

Приведу еще один пример использования в типовых отчетах (конфигурация «Торговля и склад» и подобные ей) с группировками.

Использование в процедуре Сформировать():

По приведенной ссылке можно скачать 2 версии отчета. Во новой редакции отчета по смыслу исключено использование счета 62, но все равно можно увидеть насколько проще, быстрее и понятнее стал отчет. К тому же его стало легче модернизировать в случае необходимости.

Рассмотрим пример создания индексов для поиска в индексированной таблице значений. Задача — списать остатки по товару и партии (например, в модуле документа) по данным таблицы движений (ТЗ).

Пример поиска в индексированной таблице значений по одному значению. В данном примере находится строка в ИТЗ при переборе строк документа.

Рассмотрим пример поиска ячейки табличного документа по содержимому (первым символам) индексированной таблицы. Для этого в таблице создаем служебные колонки «ТоварПоиск» и «НомСтрТабл». В колонку с товаром записываем наименование товара в нижнем регистре, в номер строки — номер строки табличного документа в процессе вывода таблицы на экран. Далее создаем индекс:

Затем создаем на форме текстовое поле «СтрПоиска» и прописываем обработку события для него. Не все строки попали в табличный документ, поэтому проверяем заполненность колонки «НомСтрТабл». В данном случае поиск будет осуществляться по первым символам поля «ТоварПоиск».

Источник