2

У меня есть список продуктов, каждый из которых связан с 3 номерами. Когда я выбираю этот продукт через раскрывающееся меню (в левой части скриншота, где я выбрал "стейк"), я автоматически заполняю ячейки под ним этими тремя связанными числами. Однако в настоящее время я делаю это с помощью массивной вложенной формулы IF (как видно на скриншоте).

Мне интересно, какие еще более эффективные способы сделать это могут быть? Предпочтительно способ, который позволил бы мне добавлять как можно больше продуктов. Excel говорит мне, что формула слишком длинная, поэтому я больше не могу добавлять продукты.

Снимок экрана с таблицей Excel - большая вложенная формула IF

Снимок экрана 2

1 ответ1

4

То, что вы ищете, это VLOOKUP

Поместите эти формулы ниже красных строк (которые вы использовали для ввода стейка)

=VLOOKUP(I4, $V$5:$Y$8, 2, FALSE)
=VLOOKUP(I4, $V$5:$Y$8, 3, FALSE)
=VLOOKUP(I4, $V$5:$Y$8, 4, FALSE)

Примечание: я предполагаю, что ряд стейка - ряд 4. Я также предполагаю, что таблица Nutritional заканчивается в строке 8. Отрегулируйте часть $ Y $ 8, если на вашем столе больше.

Или изменение INDEX MATCH

=INDEX($W$5:$W$8, MATCH(I4, $V$5:$V8, 0))
=INDEX($X$5:$X$8, MATCH(I4, $V$5:$V8, 0))
=INDEX($Y$5:$Y$8, MATCH(I4, $V$5:$V8, 0))

Вы можете использовать VLOOKUP просто отлично, но INDEX MATCH безопаснее, если вы хотите добавить столбцы в таблицу питания в будущем.

РЕДАКТИРОВАТЬ:

Если вы получили ошибку, потому что у вас пустая строка с информацией о продуктах питания, оберните ее с помощью IFERROR или IF(ISBLANK)

=IFERROR(VLOOKUP( ... ), 0)
=IF(ISBLANK(I4), 0, VLOOKUP( ... ))

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