Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Popov_A_A_Kurs_kompyuternoy_podgotovki_Excel.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
4.36 Mб
Скачать

4.8. Функции выбора и поиска

ВЫБОР(номер; значение1; значение2; ...) – возвращает зна­чение из списка значений с заданным номером от 1 до 29. Примеры:

ВЫБОР(2;"Апрель";"Май";"Июнь")="Май",

ВЫБОР(5;1;4;7;2)=#ЗНАЧ! – ошибка, поскольку искомый номер 5 больше числа элементов в списке (4).

В качестве номера и значений можно использовать ссылки на ячейки, например ВЫБОР(B8;С3;C4;C5).

ПОИСКПОЗ(искомое значение; область поиска[; тип поиска])

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

0 – соответствие должно быть точным (полное совпадение).

1 – ищется наибольшее значение, которое меньше или равно (если есть) искомому. Область поиска должна быть упорядочена по возрастанию. Если параметр не указан, он считается равным 1.

A

B

C

D

E

F

1

2

20

5

30

7

15

3

4

12

30

40

42

4

60

45

40

12

4

Рис. 4.8-1

-1 – ищется наименьшее значение, которое больше или равно искомому. Область поиска должна быть упорядочена по убыванию.

Примеры. Пусть, анализируемая таблица изображенное на рис. 4.8-1.

Тогда следующие функции выдадут результаты:

ПОИСКПОЗ(7;B2:F2;0)=4 клетка Е2 (четвертая в области),

ПОИСКПОЗ(10;B2:F2;0)=#Н/Д не найдено,

ПОИСКПОЗ(20;B3:F3;1)=2 клетка С3 (вторая в области),

ПОИСКПОЗ(20;B4:F4;-1)=3 клетка D4 (третья в области).

Найденные клетки выделены жирной рамкой.

ГПР(искомое значение; область поиска; номер строки извлечения [;тип поиска])

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

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

Гпр(что искать; где искать; откуда взять; как искать).

Параметр тип поиска имеет значение ИСТИНА или ЛОЖЬ. Если ЛОЖЬ, поиск в первой строке будет точным, если ИСТИНА (или параметр не задан) – приблизительным (интервальным). В этом случае найденным считается наибольшее значение, меньшее или равное искомому. Ключевая строка тогда должна быть отсортирована по возрастанию. Если этого не сделать, результаты будут непредсказуемы. Напомним, что логические значения ИСТИНА и ЛОЖЬ внутри формул могут быть заменены на 1 и 0 соответственно.

Примеры (исходные данные берутся из рис. 4.8-1).

ГПР(7;B2:F4;3;ЛОЖЬ)=12

Здесь в верхней строке области B2:F4 ищется значение, в точности равное 7. Если поиск успешен, возвращается значение клетки в строке номер три, отсчитывая от верхней строки области. Иными словами

ГПР(искомое_значение 7;область_поиска B2:F4;

строка,_из_которой_извлекается_результат 3; поиск_должен_быть_точным ЛОЖЬ).

В нашем случае результатом явится значение клетки Е4, содержащей число 12. Совершенно идентичные результаты будут получены формулой ГПР(7;B2:F4;3;0) поскольку 0 заменяет значение ЛОЖЬ.

Функции вида ГПР(7;B2:F4;3;1) и ГПР(7;B2:F4;3) скорее всего, вызовут сообщение об ошибке (#Н/Д), поскольку интервальный поиск при неупорядоченной ключевой строке непредсказуем. Хотя в некоторых случаях результат может оказаться верным, рассчитывать на это не стоит.

ГПР(25;B3:F4;2;ИСТИНА)=45

В верхней строке области B3:F4 ищется значение, близкое к 25. Поскольку точно этого значения в строке В3:F3 нет, поиск завершается при нахождении числа 12 в клетке С3, так как следующее значение было (30) бы уже больше искомого (25). Функция возвращает значение клетки в строке номер два, отсчитывая от верхней. В нашем случае это клетка С4. Аналогичный результат будет получен с помощью формулы

ГПР(25;B3:F4;2;1), поскольку 1 заменяет значение ИСТИНА.

ВПР(искомое значение; область поиска; номер столбца извлечения [;тип поиска])

– осуществляет поиск искомого значения в самом левом ключевом столбце области поиска. Результат извлекается из столбца с заданным номером относительно ключевого столбца области поиска. Функция является

A

B

C

1

Ключевой

столбец

Столбец

извлечения

2

3

а

3

5

б

4

6

в

5

9

г

6

11

д

Рис. 4.8-2

полным вертикальным аналогом функции ГПР().

Примеры (данные из рис. 4.8-2):

ВПР(6;B2:C6;2;0)=ВПР(6;B2:C6;2;1)=в  – цифра 6 найдена в ключевом столбце, результат извлечен из второго (относительно ключевого) параллельного столбца C.

ВПР(7;B2:C6;2;1)=в – цифра 7 не найдена, но поскольку поиск интервальный, подходящим считается число 6 и результат (в) берется из столбца C.

ВПР(15;B2:C6;2;1)=д – число 15 не найдено. Берется ближайшее меньшее – 11. Результат поиска – буква д.

ВПР(1;B2:C6;2;0)= #Н/Д, ВПР(7;B2:C6;2;0)= #Н/Д,

ВПР(15;B2:C6;2;0)= #Н/Д, ВПР(1;B2:C6;2;1)= #Н/Д.

Точный поиск чисел 1, 7 и 15 оказался неудачным (в ключевой строке нет этих чисел), что и повлекло сообщение об ошибке (“Нет данных”). Вообще, никакой поиск единицы не будет успешным, поскольку ключевой столбец начинается с цифры 3.

Пример. Функции ВПР()/ГПР() могут использоваться не только при вычислениях, но и при условном форматировании. Пусть таблица (рис. 4.8-3) содержит данные о рабочих днях сот­рудников. Нам нужно создать средство быстрого выделения искомых рабочих дней среди перечня рабочих смен, отработанных сотрудниками учреждения. Искомые даты (до трех) вводятся оператором в область C1:E1.

A

B

C

D

E

1

Искомые даты:

6.окт

10.окт

12.окт

2

3

Имя

Рабочие смены

4

Петр

10.окт

11.окт

12.окт

13.окт

5

Иван

6.окт

9.окт

10.окт

11.окт

6

Олег

9.окт

11.окт

12.окт

13.окт

Рис. 4.8-3

Установим для клетки В4 условное форматирование вида:
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]