Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_раб_4.docx
Скачиваний:
8
Добавлен:
27.09.2019
Размер:
901.71 Кб
Скачать

4.3. Фильтрация данных

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

Фильтр. Для использования фильтра надо щелкнуть на кнопке со стрелкой, расположенной в заголовке нужного столбца. В результате этой операции появляется панель, на которой отображен список данных этого столбца. Список может содержать до 10 000 значений. С помощью команды Фильтр можно создать три типа фильтров: по значениям списка, по условию или по формату.

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

Создание условий зависит от типа данных в столбце. Если столбец содержит текстовые строки, то при выборе пункта Текстовые фильтры, будут доступны операции: начинается, заканчивается, содержит и т.д. При выборе пункта Фильтры по дате для столбца, содержащего даты, будут доступны операции до, после, завтра, в этом квартале, в прошлом году и т.д. Для чисел доступны операции: больше, меньше, между, ниже среднего, выше среднего и т.д. Для использования данных фильтров нужно выбрать пункт Числовые фильтры. Некоторые операции выполняются сразу, например, в прошлом году, выше среднего, а после выбора других операций (в списке после названия этих операций стоит многоточие …) открывается диалоговое окно Пользовательский автофильтр, в котором надо ввести необходимые значения или выбрать их из списка. Условия для отбора записей в определенном столбце могут состоять из двух самостоятельных частей, соединенных логическими функциями И/Или.

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

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

Для восстановления всех строк исходной таблицы нужно в меню фильтрации столбца выбрать команду Снять фильтр с "…", где в кавычках будет отображаться имя поля, для которого снимается настройка фильтра. Для отмены режима фильтрации нужно установить курсор внутри таблицы и выполнить команду: Главная  группа Редактирование  Сортировка и фильтр  Фильтр.

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

Расширенный фильтр. Этот фильтр предназначен для фильтрации таблицы в соответствии с заданными пользовательскими критериями. В отличие от простого фильтра критерии расширенного фильтра формируются и располагаются в области рабочего листа. Расширенный фильтр позволяет:

  • сохранять критерий отбора и многократно его использовать;

  • оперативно вносить изменения в критерии отбора в соответствии с потребностями;

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

  • помещать результаты фильтрации в любую область листа;

  • показывать в отфильтрованных записях не все столбцы, а только указанные.

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

Критерии отбора для расширенного фильтра могут содержать: точные значения, шаблон значения, включающий символы подстановки * и ? (* — для указания произвольного количества символов, ? — для замены одного символа), значения, формируемые с помощью операторов сравнения >, >=, < и т.д.

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

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

На рис. 4.3 показана исходная таблица (А1:Н8), сформированный диапазон условий (А10:Н11) и результат, полученный после применения указанных условий (А13:Н15). Для получения результата выделим ячейку таблицы, в окне Расширенный фильтр (Данные  группа Сортировка и фильтр  Дополнительно) установим переключатель Скопировать результат в другое место, укажем в поле Диапазон условий А10:Н11, а в поле Поместить результат в диапазон ссылку на ячейку А13. Поле Исходный диапазон уже заполнено $A$1:$H$8.

А

В

С

D

E

F

G

H

1

Фамилия

Пол

Группа

Подгруппа

Информатика

Химия

Матема-тика

Средний балл

2

Соколов

муж

1

а

3

4

4

0

3

Птицына

жен

1

б

4

5

5

0

4

Гречко

жен

2

а

4

3

3

0

5

Кузина

жен

2

а

5

5

5

0

6

Котова

жен

2

б

4

4

2

0

7

Попов

муж

1

б

5

4

4

0

8

Смирнов

муж

2

б

3

4

2

0

9

Фамилия

Пол

Группа

Подгруппа

Информатика

Химия

Матема-тика

Средний балл

10

11

5

>4

12

13

Фамилия

Пол

Группа

Подгруппа

Информатика

Химия

Матема-тика

Средний балл

14

Птицына

жен

1

б

4

5

5

0

15

Кузина

жен

2

а

5

5

5

0

Рис. 4.3

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

На рис. 4.4 представлен диапазон условий и результат, полученный после применения команды Расширенный фильтр. Для получения результата сформируем диапазон условий А22:Н25. Критерии отбора записаны в разных строках, так как они связаны функцией Или. В пер­вую строку области результатов (ячейки А27:С27) скопируем заголовки нужных столбцов из исходной таблицы. В диалоговом окне Расши­ренный фильтр (Данные  группа Сортировка и фильтр  До­полнительно) установим переключатель Скопировать результат в другое место, в поле Исходный диапазон укажем А1:Н8, в поле Диапазон условий — А22:Н25, а в поле Поместить результат в диапазон — А27:С27. Поле Исходный диапазон может быть уже заполненным, если перед фильтрацией была выделена любая ячейка таблицы.

А

В

С

D

E

F

G

H

Фамилия

Пол

Группа

Подгруппа

Информатика

Химия

Матема-тика

Средний балл

22

23

муж

3

24

муж

3

25

муж

3

26

27

Фамилия

Группа

Средний балл

28

Соколов

1

3,67

29

Смирнов

2

3

Рис. 4.4