![](https://cdn.wiki-base.com/6040444/excel_formula_dynamic_lookup_table_with_indirect__2.png.webp)
Загальна формула
=VLOOKUP(A1,INDIRECT("text"),column)
Резюме
Щоб дозволити динамічну таблицю пошуку, ви можете використовувати функцію INDIRECT з іменованими діапазонами всередині VLOOKUP. У наведеному прикладі формула в G5:
=VLOOKUP(F5,INDIRECT(E5),2,0)
Передумови
Мета цієї формули полягає в тому, щоб дозволити простий спосіб перемикання діапазонів таблиць усередині функції пошуку. Одним із способів обробки є створення іменованого діапазону для кожної необхідної таблиці, а потім посилання на іменований діапазон всередині VLOOKUP. Однак якщо ви просто спробуєте надати VLOOKUP масив таблиці у вигляді тексту (тобто "table1"), формула не вдасться. Функція INDIRECT потрібна, щоб перетворити текст на дійсне посилання.
Пояснення
По суті, це стандартна формула VLOOKUP. Єдина різниця полягає у використанні INDIRECT для повернення дійсного масиву таблиці.
У наведеному прикладі створено два іменовані діапазони: "table1" (B4: C6) і "table2" (B9: C11) *.
У G5 INDIRECT підбирає текст у E5 і перетворює його на іменований діапазон "table1", який перетворюється на B4: C6, який повертається до VLOOKUP. VLOOKUP виконує пошук і повертає 12 для кольору "синій" у таблиці1.
У G6 процес той самий. Текст у E6 перетворюється на "table2", який перетворюється на B9: C11. З тим самим значенням пошуку VLOOKUP повертає 24.
* Примітка: діапазони імен насправді створюють абсолютні посилання, такі як $ B $ 9: $ C $ 11, але я пропустив абсолютний синтаксис посилань, щоб полегшити читання опису.