Что значит отфильтровать?
В конечном итоге основное назначение любой базы данных – это оперативный поиск необходимой информации по какому–либо запросу. Под запросами принято понимать задачи на поиск информации в базе данных. При этом часть базы данных, удовлетворяющая запросу, называется выборкой. В Excel запросы реализованы с помощью фильтров. Фильтрация списка – это процесс, в результате которого в списке скрываются все строки, не удовлетворяющие критериям фильтрации, а остаются видимыми только те (остается выборка), которые соответствуют условиям запроса.
Excel располагает двумя командами фильтрации, которые становятся доступными через пункт меню Данные/Фильтр: Автофильтр и Расширенный фильтр. С помощью автофильтра реализуются простые запросы, содержащие не более двух условий поиска. Расширенный (усиленный) фильтр позволяет выполнять запросы практически любой сложности.
Для установки автофильтра на все поля списка достаточно обратиться к пункту меню Данные/Фильтр/Автофильтр. Можно установить автофильтр и для одного поля. Для этого достаточно его предварительно выделить: активизировав заголовок соответствующего столбца, нажать комбинацию клавиш Shift, Ctrl+Ї, после чего справа от заголовка появится кнопка , щелчок по которой раскрывает список значений данного столбца. Эти значения можно использовать для фильтрации. Кроме того, можно настроить автофильтр, выбрав из этого списка элемент (Условие…), после чего можно создать критерий (настроить пользовательский автофильтр), состоящий не более чем из двух условий, соединенных знаками операций И, ИЛИ. Каждое из этих условий представляет собой выражение логического типа, содержащее любые операции отношения (<, <=, =, <>, >, >=). При создании текстовых критериев можно использовать символы шаблона: «*» – для обозначения последовательности произвольной длины, состоящей из любых символов, и «?» – для обозначения единичного символа, стоящего на определенном месте. Для включения символов шаблона в критерий в качестве обычных символов перед ними надо ставить тильду «~». Пусть, например, нам необходим список студентов, чьи имена начинаются с буквы «А» и заканчиваются буквой «а», или имена состоят из восьми любых букв. Один из возможных вариантов пользовательского автофильтра для решения этой задачи приведен на рис.6, а результаты фильтрации
Расширенный фильтр по сравнению с автофильтром обладает следующими преимуществами:
позволяет создавать критерии с условиями по нескольким полям;
позволяет создавать критерии с тремя и более условиями;
позволяет создавать вычисляемые критерии;
позволяет копию полученной в результате фильтрации выборки помещать в другое место рабочего листа.
При работе с расширенным фильтром необходимо определить три области (рис. 8):
исходный диапазон (интервал списка) – область базы данных ($A$1:$H$26);
диапазон условий (интервал критериев) – область, содержащая критерии фильтрации, которые могут находиться и на отдельном листе (Критерии!$A$2:$D$4);
диапазон результата (интервал извлечения) – область, в которую необходимо скопировать выборку (можно указать только адрес левого верхнего угла), она не задается в случае фильтрации списка на том же самом месте.
Назначение флажка Только уникальные записи очевидно. Установка этого флажка при копировании выборки в интервал извлечения позволяет убрать из нее все повторяющиеся записи. При отсутствии диапазона условий с помощью этого флажка можно избавиться от повторяющихся записей в исходном списке.
При создании интервала критериев необходимо помнить о следующих соглашениях:
диапазон условий должен состоять не менее чем из двух строк (первая строка – заголовки, которые рекомендуется просто копировать из заголовков столбцов списка, последующие – соответствующие критерии);
если условия располагаются в одной строке, то это означает одновременность их выполнения, т.е. считается, что между ними поставлена логическая операция И;
для истинности критерия, состоящего из условий, располагающихся в разных строках, требуется выполнение хотя бы одного из них, т.е. считается, что они соединены логической операцией ИЛИ;
интервал критериев должен располагаться выше или ниже списка, либо на другом рабочем листе;
в интервале критериев не должно быть пустых строк.
При формировании текстовых критериев необходимо помнить о том, что:
если в ячейке содержится только один символ (рис. 10 – колонка A), то такому условию удовлетворяют любые тексты, начинающиеся с этого символа;
если содержимое ячейки представляет собой текстовую константу вида ”>БУКВА” или ”<БУКВА”, то такому условию соответствует любой текст, начинающийся с этой и последующих БУКВ, или начинающийся с предшествующих ей БУКВ;
для поиска текста на полное совпадение содержимое ячейки с критерием должно иметь вид =”=ТЕКСТ”;
в текстовых критериях можно использовать символы шаблона.
Вычисляемый критерий представляет собой формулу (рис. 10), в которой обязательно имеется ссылка (для реализации каких–либо вычислений) на соответствующую ячейку первой строки списка. Так как эта формула является логическим выражением, то в ячейке, ее содержащей, отображается результат вычисления (ИСТИНА либо ЛОЖЬ) для первой записи списка (рис. 9). А в результате процесса фильтрации в списке будут скрыты те записи, для которых при вычислении формулы получается значение ЛОЖЬ. При создании вычисляемых критериев необходимо помнить о следующих правилах:
заголовок столбца над вычисляемым критерием не должен совпадать ни с каким из имен полей списка, он может быть либо пустым, либо содержать текст, поясняющий назначение условия;
в самом условии ссылки на ячейки внутри списка должны быть записаны в относительной форме;
ссылки на ячейки вне списка должны быть абсолютными.
Пусть, например, перед нами стоит следующая задача. Необходимо выдать список студентов мужского пола, родившихся летом, или же студенток, год рождения которых является високосным. Содержимое интервала критериев, созданного для реализации этого запроса, приведено на рис. 10. Верхняя строка интервала содержит заголовки критериев, первый из которых совпадает с заголовком поля, а оставшиеся три уникальны. В ячейки B3, C3, D4 записаны формулы (вычисляемые критерии).
Выборка, полученная в результате фильтрации по критериям рис. 10, приведена на рис. 11.
Расширенный фильтр с вычисляемыми критериями позволяет реализовать запрос практически любой сложности. Пусть, например, перед нами стоит следующая задача. Необходимо сформировать выборку, в которую бы входили студенты:
названные в честь отца;
самые младшие по возрасту;
самые старшие.
Интервал критериев для реализации этого запроса приведен на рис. 12, а по-лученная выборка – на рис. 13.
Однако для реализации такого рода сложных запросов необходимо ознакомиться хотя бы с самыми распространенными функциями рабочего листа Excel: математическими, текстовыми, даты и времени. Кроме того, существует еще специальный класс функций, предназначенных для анализа списков.