Пример1.
Отберем из списка Список сотрудников только строки, в которых содержится информация обо всех женщинах, имеющих стаж работы в фирме больше 5 лет. Для этого проделайте следующие действия.
- Добавьте новый столбец:
- в ячейку N7 введите заголовок Стаж работы в фирме,
- в ячейку N8 – формулу: = РАЗНДАТ(M8;СЕГОДНЯ();”Y”), которая вычисляет полное количество лет между датой приема на работу и датой сегодня.
- растяните полученную формулу до конца списка.
- Скопируйте в ячейку А1 заголовок столбца Пол, а в ячейку В1 – Стаж работы в фирме.
- Под заголовками столбцов введите условия, определенные поставленной задачей (рис.7.9).
- Установите курсор в любую ячейку списка и дайте команду Данные=>Фильтр=> Расширенный фильтр.
- В открывшемся окне, щелкнув мышью в окне Диапазон условий, выделите ячейки от А1 до В2. Остальные параметры оставьте по умолчанию. Образец заполнения окна диалога можно увидеть на рис. 7.9.
Рис. 7.9.
- Щелкнув мышью на кнопке ОК, получите отфильтрованный на том же месте список (рис. 7.10).
Рис. 7.10.
Пример2
Отберем из списка Список сотрудников только строки, в которых содержится информация о пенсионерах. Для этого мы будем использовать в условиях отбора функцию, определяющую превышение вычисленного от даты рождения возраста 55 лет для женщин и 60 для мужчин .Для этого проделайте следующие действия.
- Скопируйте в ячейку А1 заголовок столбца Пол, а ячейку В1 оставить пустой.
- Под заголовками столбцов введите условия:
- в ячейку А2 – Ж,
- в ячейку В2 – =(СЕГОДНЯ()-J8)/365,25>55 (т.е. формулу, сравнивающую возраст с 55); в ячейку А3 – М,
- в ячейку В3 – =(СЕГОДНЯ()-J7)/365,25>60 (т.е. формулу, сравнивающую возраст с 60).В ячейках при этом отобразится результат сравнения для первой ячейки анализируемого столбца: в В2 – ИСТИНА, а в В3 – #ЗНАЧ!, что не влияет на дальнейшую работу фильтра
- Установите курсор в любую ячейку списка и дайте команду Данные =>Фильтр =>Расширенный фильтр. Остальные параметры оставьте по умолчанию.
- Щелкнув мышью в окне Диапазон условий, выделите ячейки от А1 до В3 (рис. 7.11).
Рис. 7.11.
- Щелкнув по кнопке ОК, получите на том же месте результат, который может отличаться каждый день, т.к. зависит от текущей даты (рис. 7.12).
Рис. 7.12.
Пример 3
Отберем из списка Список сотрудников только строки, в которых содержится информация о работниках, имеющих стаж более 8 лет и возраст
менее 40 лет..Результат поместить в другое место. Для этого мы будем использовать в условиях отбора функцию, определяющую превышение вычисленного от даты рождения возраста 55 лет для женщин и 60 для мужчин .Для этого проделайте следующие действия.
- Скопируйте в ячейку В1 заголовок столбца Стаж работы в фирме, а ячейку А1 оставьте пустой.
- Под заголовками столбцов введите условия:
- в ячейку В2 – >8
- в ячейку А2 – =(СЕГОДНЯ()-J8)/365,25<40 (т.е. формулу, сравнивающую возраст с 40);
- В ячейке А2 при этом отобразится результат сравнения для первой ячейки анализируемого столбца ЛОЖЬ, что не влияет на дальнейшую работу фильтра
- Установите курсор в любую ячейку списка и дайте команду Данные =>Фильтр =>Расширенный фильтр. Выберите вариант Скопировать результат в другое место, щелкните
в поле Поместить результат в диапазон и выделите первую ячейку диапазона для размещения результата фильтрации.
Отобранные данные будут помещены в диапазон, начинающийся с указанной ячейки - Щелкнув мышью в окне Диапазон условий, выделите ячейки от А1 до В2 (рис. 7.12).
Рис. 7.12.
Фильтр для уникальных записей
Для извлечения уникальных значений из столбца данных и вставки их в новое место можно использовать возможности Расширеннго фильтра. Для этого выполните следующие действия.
- Выберите столбец или ячейку в списке, который требуется отфильтровать. Убедитесь, что диапазон ячеек содержит заголовок столбца
- В меню Данные выберите команду Фильтр, а затем — команду Расширенный фильтр.Отобразится диалоговое окно Расширенный фильтр.
- Выполните одно из следующих действий:
- Чтобы отфильтровать список на месте, как и при использовании функции Автофильтр, выберите вариант Фильтровать список на месте.
- чтобы скопировать результат действия фильтра в другое место, выберите вариант скопировать результат в другое место и введите в поле Поместить результат в диапазон ссылку на ячейки. В противном случае нажмите кнопку Свернуть диалоговое окно
для временного скрытия диалогового окна, выберите ячейку на листе, а затем нажмите кнопку Развернуть диалоговое окно
.
- Установите флажок Только уникальные записи и нажмите кнопку ОК.
Уникальные значения из выбранного диапазона, начиная с ячейки, указанной в поле Копировать в диапазон, будут cкопированы в новое место..
Пример 4
Определим в списке сотрудников повторяющиеся фамилии. Для решения этой задачи вначале определим, какие фамилии есть в списке, а затем подсчитаем количество повторений. для этого выполните следующие действия.
- Выделите столбец В с заголовком, т.е. диапазон В8:В24.
- Дайте команду Данные =>Фильтр =>Расширенный фильтр. Выберите вариант Скопировать результат в другое место, щелкните
в поле Поместить результат в диапазон и выделите первую ячейку диапазона для размещения результата фильтрации.
Отобранные данные будут помещены в диапазон, начинающийся с указанной ячейки. Поставьте флажок в поле Только уникальные записи (рис. 7.13) и нажмите кнопку ОК. - В появившемся результате фильтрации видны все фамилии списка (рис. 7.14).
Рис. 7.14.
- Для определения числа повторений заполняем соседний столбец: в ячейку В26 вводим текст количество, в ячейку вводим формулу =СЧЁТЕСЛИ($B$8:$B$24;A27), подсчитывающую количество ячеек в исходном диапазоне, значения которых равны значению в ячейке А27, протягиваем формулу до конца полученного столбца (рис.7,15) .
Рис. 7.15.
Рис. 7.13.