Пошук даних у таблиці за простими критеріями
Якщо в таблиці необхідно знайти певне відоме значення, це завдання можна виконати за допомогою стандартного засобу пошуку, який запускають командою Основне Знайти. Проте зазвичай застосовується більш складний алгоритм пошуку: значення одного параметру шукають за умовою, якій задовольняє інший параметр. Припустимо, що у класному журналі потрібно найти оцінку, яку учень Жуков отримав за другу тематичну роботу. Тут умова накладається на прізвище, а шукається значення параметра «оцінка за другу тематичну». Надання засобів для виконання подібних запитів є однією з найважливіших функцій будь-якої системи керування базами даних. Відповідні засоби є у табличному процесорі Microsoft Excel.
Пошук за допомогою форми даних
Зручний спосіб пошуку надає форма даних. Критерії пошуку в ній вводять за допомогою кнопки Умови. Наприклад, щоб зображеній на рис. 5.1 таблиці знайти всі рейси з Києва, досить клацнути цю кнопку, і на екрані з’явиться форма даних без записів. У поле Пункт відправлення потрібно ввести слово Київ та клацнути кнопку Знайти далі, і в діалоговому вікні з’явиться перший об’єкт, який відповідатиме заданому критерію. Переглянути всі такі об’єкти можна за допомогою кнопок Знайти далі та Знайти назад.
Пошук за значеннями в першому стовпці
Умову вибору об’єкта найчастіше накладають на ключові параметри, тобто такі, значення яких є унікальними, неповторними в усій розглядуваній множині однотипних об’єктів. Для кожного журналу таким параметром може бути прізвище та ім’я учня ( якщо в одному класі немає кількох учнів з однаковим прізвищем та ім’ям), а для розкладу руху автобусів – номер рейсу. Тільки ключові параметри дають змогу одночасно ідентифікувати об’єкт: скажімо, за номером рейсу ви можете точно визначити, про який рейс ідеться, а за пунктом відправленням – ні.
Значення ключового параметра зазвичай записують у першому стовпці таблиці. Тому функція VLOOKUP (рос. ВПР), яка в Microsoft Excel реалізує пошук за ключовим значенням, працює так. Спочатку задане ключове значення відшукується в першому стовпці таблиці, а потім переглядається весь рядок, де воно міститься.
Функція повертає значення зі стовпця з заданим номером у цьому рядку. Повний формат функцій такий:
VLOOKUP(шукане_значення;таблиця;номер_стовпця;точність_пошуку)
Стисло опишемо призначення аргументу функції:
- шукане_значення – значення, яке потрібно знайти в першому стовпці;
- таблиця – вся таблиця;
- номер_стовпця - номер стовпця, значення, з якого буде повернуто функцією;
- точність_пошуку – логічне значення, що визначає спосіб пошуку у першому стовпці: пошук значення, яке точно дорівнює заданому (точність_пошуку=FALSE), або такого, що дорівнює заданому значенню наближеного (точність_пошуку=TRUE).
Як приклад розглянемо таблицю з відомостями про працівників певного підприємства (рис. 5.3).
Рис. 5.3. Обчислення дати народження працівника за його прізвищем
Користувач знає прізвища працівників і бажає за введеним у клітинку В8 прізвищем отримати у клітинці В9 інформацію про дату народження відповідного працівника. Для цього у клітинку В9 він має ввести таку формулу:
=VLOOKUP(В8;А1:D6;3;FALSE)
Тут В8 – адреса клітинки, в яку користувач вводить прізвище, А1:D6 – діапазон таблиці, 3 – номер стовпця, який містить відомість про дату народження. Значення FALSE останнього аргументу означає, що в першому стовпці шукатиметься саме те значення, яке було введено у клітинку В8.
Якщо значення останнього аргументу дорівнюватиме TRUE, то дату народження можна буде визначити навіть за умови, що прізвище ви знаєте лише приблизно, але таблиця у такому разі має бути відсортована в порядку зростання значень першого стовпця.