0Pricing
Excel Formulas Academy · Урок

Точное и приблизительное совпадение

Выбирайте TRUE или FALSE для типа совпадения в VLOOKUP

«Точное и приблизительное совпадение» — бесплатный урок Excel Formulas Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Excel Formulas Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Excel Formulas Academy содержит 4 уроков всего.

Важность четвёртого аргумента

Последний аргумент VLOOKUP — поиск по диапазону — определяет поведение поиска. Он небольшой, но очень важный:

  • FALSE (или 0) означает точное совпадение
  • TRUE (или 1) означает приближённое совпадение

Выбор неправильного варианта — одна из самых распространённых ошибок в электронных таблицах. В этом уроке вы узнаете, когда именно использовать каждый вариант.

=VLOOKUP(value, table, col, FALSE)

Точное совпадение с FALSE

При точном совпадении находится значение, полностью совпадающее с искомым. Если такого значения нет, VLOOKUP возвращает ошибку #N/A, а не пытается угадать.

Используйте FALSE при поиске уникальных идентификаторов, например кодов товаров, идентификаторов сотрудников или адресов электронной почты, когда правильным может быть только полное совпадение.

Для точного совпадения таблицу не нужно сортировать. VLOOKUP просматривает её, пока не найдёт нужное значение.

=VLOOKUP("A100", A1:C4, 3, FALSE)

Что возвращает точное совпадение

В нашей таблице цен (A100 Яблоко 0.50, B200 Банан 0.30, C300 Вишня 1.20) точный поиск существующего кода работает безупречно:

Возвращается значение 1.20. Но если выполнить поиск по несуществующему коду, например "Z999", вы получите #N/A. Эта ошибка на самом деле полезна: она сообщает, что элемент действительно отсутствует, вместо того чтобы вернуть неверное соседнее значение.

=VLOOKUP("C300", A1:C4, 3, FALSE)

Приближённое совпадение с TRUE

При приближённом совпадении находится наибольшее значение, которое меньше или равно искомому значению. Такой вариант предназначен для диапазонов и уровней, а не для точного поиска идентификаторов.

Классический пример — таблица уровней: налоговые ставки, тарифы доставки, границы оценок или скидки за объём, когда значение находится между двумя порогами.

С TRUE связано одно важное правило, которое рассматривается в следующем эпизоде.

=VLOOKUP(value, table, col, TRUE)

Для TRUE нужна сортированная таблица

Чтобы приближённое совпадение работало, первый столбец должен быть отсортирован по возрастанию — от наименьшего значения к наибольшему. VLOOKUP проходит по столбцу и останавливается на последнем значении, которое не превышает искомое.

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

Пример диапазонов оценок

Представьте таблицу оценок в диапазоне A1:B5, отсортированную по возрастанию минимального балла:

  • 0 = F
  • 60 = D
  • 70 = C
  • 80 = B
  • 90 = A

Для балла 76 должна возвращаться оценка C, потому что 76 попадает в диапазон 70–79. В формуле используется TRUE, чтобы найти наибольший порог, не превышающий 76:

=VLOOKUP(76, A1:B5, 2, TRUE)

Пошаговый разбор поиска по диапазону

При искомом значении 76 и TRUE VLOOKUP проходит по отсортированным порогам: 0, 60, 70, 90... Он сравнивает каждый из них.

  • 0 меньше или равно 76: продолжаем
  • 60 меньше или равно 76: продолжаем
  • 70 меньше или равно 76: продолжаем
  • 90 больше 76: останавливаемся

Затем он возвращается к последней подходящей строке (70) и возвращает соответствующий диапазон: C. Приближённый поиск фактически ищет значение между порогами.

=VLOOKUP(76, A1:B5, 2, TRUE)

Риск пропуска аргумента

Если полностью пропустить четвёртый аргумент, VLOOKUP по умолчанию использует TRUE — приближённое совпадение. Это удивляет многих, кто ожидает точного поиска.

Формула вроде =VLOOKUP(A2, Data!A:B, 2) для неотсортированного списка может незаметно вернуть неверное значение. Безопасное правило: всегда указывайте FALSE, если только вы намеренно не выполняете поиск по диапазонам в отсортированной таблице.

=VLOOKUP(A2, Data!A:B, 2, FALSE)

Сравнение рядом

Вот основная разница:

  • FALSE / точное: таблицу не нужно сортировать, для отсутствующего значения возвращается #N/A, лучше всего подходит для идентификаторов и кодов
  • TRUE / приближённое: таблица должна быть отсортирована по возрастанию, для значений внутри диапазона #N/A не возвращается, лучше всего подходит для уровней и диапазонов

Выбирайте вариант в зависимости от вопроса, на который нужно ответить: «присутствует ли именно этот элемент?» — FALSE; «в какой диапазон попадает это значение?» — TRUE.

Пример тарифного диапазона доставки

Для веса в D2 нужно определить стоимость доставки по отсортированной таблице диапазонов в A2:B6 (пороговые значения 0, 1, 5, 10, 20 кг). Приближённое совпадение выбирает нужный уровень:

Если в D2 указано 7, значение попадает в диапазон от 5 кг, и возвращается стоимость этого уровня. Измените вес — и уровень сразу обновится; перечислять каждый возможный вес не нужно.

=VLOOKUP(D2, $A$2:$B$6, 2, TRUE)

Компромисс между скоростью и надёжностью

Есть и ещё один важный аспект — производительность. В очень больших отсортированных таблицах приближённое совпадение (TRUE) может работать быстрее, поскольку электронная таблица может быстро переходить по отсортированным значениям, а не просматривать каждую строку.

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

=VLOOKUP(A2, $A$1:$C$1000, 3, FALSE)

Быстрая проверка

Выберите подходящий тип совпадения для каждой ситуации.

Итоги: точное и приближённое совпадение

Главные выводы:

  • FALSE = точное совпадение, таблица может быть неотсортированной, для отсутствующих значений возвращается #N/A
  • TRUE = приближённое совпадение, первый столбец должен быть отсортирован по возрастанию, находится наибольшее значение, не превышающее искомое
  • Если не указать аргумент, по умолчанию используется TRUE, поэтому всегда указывайте его явно
  • Используйте точное совпадение для идентификаторов и кодов, а приближённое — для уровней и диапазонов

Далее вы измените направление поиска и начнёте искать по строкам с помощью HLOOKUP.

=VLOOKUP(A2, $A$1:$C$100, 3, FALSE)

Часто задаваемые вопросы

Урок «Точное и приблизительное совпадение» бесплатный?

Да — полный текст урока «Точное и приблизительное совпадение» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Excel Formulas Academy, подпишись на CoddyKit PRO. Курс Excel Formulas Academy содержит 4 уроков всего.

Чему я научусь в уроке «Точное и приблизительное совпадение»?

Выбирайте TRUE или FALSE для типа совпадения в VLOOKUP Ты практикуешь Excel Formulas Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Excel Formulas Academy?

Предыдущий опыт не требуется. Excel Formulas Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Точное и приблизительное совпадение»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Excel Formulas Academy?

Да. Каждый урок Excel Formulas Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Как VLOOKUP ищет в таблице
  2. Точное и приблизительное совпадение
  3. Поиск по строкам с помощью HLOOKUP
  4. Почему VLOOKUP иногда не работает
← Назад к Excel Formulas Academy