У меня есть формула, которая работает, но абсурдно долго, но повторяет основные данные снова и снова.

Моя электронная таблица содержит 70 страниц с описанием наборов карточек. Страница, над которой я работаю, дает мне конкретную сводку, используя идентификатор карты (в A3) в качестве индекса. Точнее, я хочу минимальную цену за карту по этому идентификатору, которая может присутствовать в любом из наборов. Все наборы имеют менее 500 карт (поэтому диапазон поиска B3:I500)

Имена не следуют шаблону, несмотря на упрощение, которое я здесь сделал, но перечислены в строке G2:Z2 (на данный момент явно неполной)

=MIN(
    IFERROR(VLOOKUP($A3,Set1!$B$3:$I$500,6,FALSE),99999),
    IFERROR(VLOOKUP($A3,Set2!$B$3:$I$500,6,FALSE),99999),
    IFERROR(VLOOKUP($A3,Set3!$B$3:$I$500,6,FALSE),99999), ...

[шаблон повторяется для других наборов ...]

Я использую INDIRECT в другой части таблицы и обозначения массива еще раз в другом месте.

VLOOKUP($A3,INDIRECT("'"&M$2&"'!$B$3:$I$516"),6,FALSE)

Я не хочу объединять страницы (которые, я признаю, в некоторых отношениях сильно упростили бы вещи).

Есть ли способ упростить это большое выражение в более короткое, которое достигает той же цели (и, надеюсь, позволит избежать дальнейшего редактирования при добавлении остальных данных)?

Я пытался заставить что-то работать с косвенными, vlookup и массивом, но я всегда получаю ошибки #VALUE, вероятно, из-за искажения синтаксиса.

Я не ищу VBA-решения и не имею прямого ответа "преобразовать его в базу данных", но любая помощь приветствуется.

2 ответа2

1

Вы можете поместить поиски в листы Set# .
Если ваша формула на листе называется Summary:
Поместите формулу в ячейку скажем I1 на каждом листе Set

=IFERROR(VLOOKUP(Summary!A3,$B$3:$I$500,6,FALSE),99999)

а потом в Summary листе поставить

=MIN('Set1:Set70'!I1:I1)

Принимает на себя Set листы сгруппированы вместе (то есть никаких других листов betwenn них)

0

Чтобы ответить на вопрос в заголовке: К сожалению, вы не можете использовать 3D-ссылки с VLOOKUP, либо как исходную ссылку, либо как значение поиска. Более подробная информация здесь: http://office.microsoft.com/en-us/excel-help/create-a-3-d-reference-to-the-same-cell-range-on-multiple-worksheets-HP010102346. ASPX

Ваша формула кажется достаточно упрощенной, хотя и довольно длинной. Хотя, если ваша рабочая книга станет больше, я бы рекомендовал использовать INDEX/MATCH вместо VLOOKUP для более быстрых вычислений.

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