0Pricing
Excel Formulas Academy · Урок

Поиск по строкам с помощью HLOOKUP

Ищите значения вдоль строки, а не вниз по столбцу

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

Знакомство с HLOOKUP

HLOOKUP — горизонтальный аналог VLOOKUP. Буква H означает «горизонтальный»: вместо поиска вниз по столбцу эта функция ищет в верхней строке таблицы, а затем возвращает значение из той же колонки, но расположенной ниже.

Используйте HLOOKUP, когда данные расположены горизонтально: метки находятся в строке, а не в столбце.

=HLOOKUP(value, table, row_index_num, [range_lookup])

Четыре аргумента

HLOOKUP устроен так же, как VLOOKUP, но с одним важным отличием. Его аргументы:

  • искомое значение — что нужно найти в верхней строке
  • табличный массив — диапазон ячеек
  • номер строки — строка, из которой нужно вернуть значение (отсчёт ведётся сверху)
  • [поиск по диапазону] — TRUE для приближённого совпадения, FALSE для точного

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

=HLOOKUP(lookup_value, table_array, row_index_num, FALSE)

Пример горизонтальной таблицы

Представьте квартальную таблицу, в которой месяцы расположены в строке 1 в ячейках диапазона A1:D3:

  • Строка 1: Янв., Февр., Март, Апр.
  • Строка 2 (Продажи): 100, 150, 120, 200
  • Строка 3 (Затраты): 60, 70, 65, 90

Верхняя строка с месяцами — это строка, в которой HLOOKUP выполняет поиск. В расположенных ниже строках находятся данные, которые нужно вернуть.

Ваш первый HLOOKUP

Чтобы найти показатель продаж за март, HLOOKUP ищет «март» в верхней строке, а затем возвращает значение из строки 2 (продажи):

Если прочитать это вслух: найдите "Mar" в верхней строке диапазона A1:D3 и верните значение из 2-й строки, используя точное совпадение. Результат — 120.

=HLOOKUP("Mar", A1:D3, 2, FALSE)

Подсчёт номера строки

Номер строки отсчитывается от верхней границы табличного массива, а не от строки 1 листа.

В нашем диапазоне A1:D3 строки пронумерованы так:

  • Строка 1 = месяцы (строка поиска)
  • Строка 2 = Продажи
  • Строка 3 = Затраты

Поэтому, чтобы вернуть затраты за месяц, используйте номер строки 3. Индекс 1 просто возвращает найденную метку.

=HLOOKUP("Feb", A1:D3, 3, FALSE)

Поиск по значению в ячейке

Как и в случае с VLOOKUP, обычно лучше указать ячейку, чем вводить метку вручную. Если месяц выбран в F1, укажите эту ячейку напрямую.

Теперь при изменении F1 на другой месяц результат сразу обновится. Поэтому HLOOKUP отлично подходит для небольшого поля выбора, которое считывает данные из горизонтальной сводной таблицы.

=HLOOKUP(F1, A1:D3, 2, FALSE)

HLOOKUP и VLOOKUP

Обе функции работают по одному принципу, но повернуты на 90 градусов:

  • VLOOKUP: ищет вниз по первому столбцу, третий аргумент задаёт номер столбца
  • HLOOKUP: ищет по верхней строке, третий аргумент задаёт номер строки

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

Точное и приближённое совпадение работают так же

Аргумент поиска по диапазону работает так же, как в VLOOKUP:

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

Для поиска по меткам, например названиям месяцев, используйте FALSE. Для строки пороговых значений, разбитых на диапазоны, подойдёт TRUE, но уровни редко располагают горизонтально.

=HLOOKUP(F1, A1:D3, 2, FALSE)

Фиксация таблицы при копировании

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

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

=HLOOKUP(B5, $A$1:$D$3, 2, FALSE)

Когда появляются горизонтальные данные

Горизонтальные таблицы встречаются чаще, чем можно ожидать:

  • Финансовые модели, где годы или месяцы указаны в столбцах
  • Таблицы результатов, где раунды расположены сверху
  • Импортированные отчёты, в которых периоды указаны в строке заголовков

Вместо транспонирования всей таблицы HLOOKUP позволяет обращаться к данным в исходном виде. При этом многие предпочитают хранить данные вертикально, поскольку большинство функций рассчитано на такую форму, поэтому VLOOKUP или XLOOKUP подходят естественно.

=HLOOKUP(2024, A1:F4, 3, FALSE)

Использование HLOOKUP вместе с MATCH

Как и в случае с VLOOKUP, жёстко заданный индекс строки может быть ненадёжным. Если вставить строку, индекс перестанет соответствовать данным. Можно сделать его динамическим, найдя положение строки с помощью MATCH.

Здесь MATCH определяет, в какой строке находится метка «Расходы» среди меток в столбце A, и передаёт это число функции HLOOKUP. Теперь формула продолжает работать, даже если строки меняются местами. Это первое знакомство с комбинированием функций поиска, которое подробнее рассматривается далее.

=HLOOKUP(F1, A1:D3, MATCH("Costs", A1:A3, 0), FALSE)

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

Проверьте, насколько хорошо Вы освоили горизонтальный поиск.

Итоги: поиск по строкам

Теперь Вы умеете обращаться к данным в горизонтальных таблицах:

  • HLOOKUP выполняет поиск по верхней строке и возвращает значение из строки ниже
  • Третий аргумент — это номер_индекса_строки, отсчитываемый от верхней границы диапазона
  • FALSE и TRUE работают так же, как в VLOOKUP, для точного и приблизительного совпадения
  • При копировании вправо зафиксируйте таблицу с помощью $
  • Используйте эту функцию, когда заголовки расположены горизонтально, а не вертикально

Далее Вы узнаете, почему VLOOKUP иногда не срабатывает и как это диагностировать.

=HLOOKUP(F1, $A$1:$D$3, 2, FALSE)

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

Урок «Поиск по строкам с помощью HLOOKUP» бесплатный?

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

Чему я научусь в уроке «Поиск по строкам с помощью HLOOKUP»?

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

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

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

Сколько времени занимает урок «Поиск по строкам с помощью HLOOKUP»?

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

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

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

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

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