Я могу сделать vlookup "динамическим", изменив индекс столбца ... и легко получить весь столбец из "базы данных" ... я могу выбрать любые ключи в любом порядке.

это таблица данных + и поиск: это таблица данных + и таблица поиска

и эти формулы лежат в основе: и это формулы за

мой вопрос, если динамическая формула vlookup е. g vlookup($ g5, $ A:$ E, J $ 4, false)... можно конвертировать в индекс-совпадение? egindex (E:E, матч (A8, A:A, 0))

Как я могу получить столбцы A и E, не теряя при этом производительности соответствия индекса соответствия?

1 ответ1

2

Используйте функцию OFFSET .

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

=INDEX(OFFSET($A:$A,0, J$4-1),MATCH($G5,$A:$A,0))

OFFSET принимает три аргумента (он допускает пять, но здесь мы используем только три). Первая точка отсчета - в данном случае A:A. Второе - это количество строк, которые нужно сдвинуть вниз - в данном случае 0. Третий - количество столбцов, которые нужно переместить вправо. Вот где мы делаем работу, вытягивая ссылочный номер из строки 4 и перемещаясь по этому количеству столбцов (-1, чтобы учесть тот факт, что столбец 1 = 0 столбцов движения для нашей ссылки).

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