Как заполнить таблицу на основе раскрывающегося списка?
Я пытаюсь создать электронную таблицу для личного проекта, которая включает набор раскрывающихся меню, содержимое которых соответствует содержимому справочной таблицы.
Каждая строка в главной таблице имеет два связанных раскрывающихся меню и заполняет строку поэлементным произведением обоих связанных наборов. Например: если в первой строке таблицы установлены "Огонь" и "Вода", первые три элемента в списке будут 1*1, 0,5*0,5 и 2*0,5.
Поэлементное умножение я понимаю, как это сделать. То, что я не могу понять, как это сделать (и я потратил несколько часов на поиск), это как ссылаться на эти значения на основе раскрывающегося списка. Я думал, что нашел способ сделать это, используя ссылки на именованные диапазоны с помощью INDIRECT(), но, похоже, это не работает. Я провел несколько часов, пытаясь выяснить это, а также исследуя выпадающие списки, но ничего не смог найти. Любая помощь будет оценена.
Скриншоты рассматриваемых листов здесь.
1 ответ
Попробуйте поместить эту формулу, начиная с листа 1!C3:-
=INDEX(Sheet2!$C$2:$T$20,MATCH($A3,Sheet2!$B$2:$B$20,0),COLUMN(A:A))*
INDEX(Sheet2!$C$2:$T$20,MATCH($B3,Sheet2!$B$2:$B$20,0),COLUMN(A:A))
Идея состоит в том, что он получает строку в 2D-диапазоне Sheet2!C2:T20 путем сопоставления A3 или B3 с метками на sheet2!B2:B20, а затем получает столбец, используя функцию COLUMN, чтобы получить COLUMN(A:A), которая является равен 1, поэтому INDEX(RANGE,ROW,COLUMN) дает вам первую пару значений. Затем, когда формула перетаскивается через COLUMN(A:A), меняется на COLUMN(B:B), и вы получаете вторую пару значений и так далее.
Протестировано в Excel: для Open Office, изменить , на ; и ! к также от А до А1
=INDEX(Sheet2.$C$2:$T$20;MATCH($A3;Sheet2.$B$2:$B$20;0);COLUMN(A1))*
INDEX(Sheet2.$C$2:$T$20;MATCH($B3;Sheet2.$B$2:$B$20;0);COLUMN(A1))