1

У меня есть рабочий лист, в котором у меня есть две "таблицы", выглядящие так:

То, чего я пытаюсь достичь, это сделать следующее:

  • Возьмите первые две цифры в столбце D (для первого ряда 77)
  • Посмотрите, в какую строку в таблице I к K подходит значение из точки 1 (в случае 77 оно находится между 77-99)
  • Получить значение "Зона" для этой строки
  • Поместите это значение в столбец E

Я пытался читать о VLOOKUP, INDEX и MATCH, но я не могу понять, как решить эту проблему. К сожалению, я привык к SQL, который в этом случае не сильно мне поможет.

Что бы я сделал в SQL (вроде):

SELECT [Zone] FROM ThisTable WHERE LEFT([D1],2) BETWEEN [Start] AND [End]

Можно ли сделать это с помощью формулы в Excel?

1 ответ1

2

Как упомянул Máté Juhász, =VLOOKUP можно использовать с некоторым смещением данных. Из КБ на vlookup

Синтаксис - VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

range_lookup (необязательно)

Логическое значение, которое указывает, хотите ли вы, чтобы VLOOKUP нашел точное или приблизительное соответствие:

TRUE предполагает, что первый столбец в таблице отсортирован по номерам или по алфавиту, а затем будет искать ближайшее значение. Это метод по умолчанию, если вы его не указали.

ЛОЖЬ ищет точное значение в первом столбце.

Так что, если вы сортируете по столбцу J и делаете vlookup для него с TRUE - вы должны получить то, что вам нужно.

Таким образом, столбец E будет иметь что-то вроде =VLOOKUP((LEFT(D3,2)),$J$5:$K$19,2,TRUE)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .