У меня есть два столбца с именами команд и двумя столбцами с соответствующей статистикой. Мне нужно пройти через 2 столбца и найти статистику, соответствующую названию команды, и они должны быть в порядке. VLOOKUP, MATCH и SEARCH не работают с несколькими столбцами. Кто-нибудь знает, как это можно сделать? Поиск n-го появления в нескольких столбцах в Excel
0
A
ответ
1
Предполагая, что в вашей картине, название «Home» находится в ячейке B2
то следующая формула массива можно поместить в клетки H3:L7
(формулы массива должны быть введены с Ctrl + Сдвиг + Введите)
=IFERROR(OFFSET($D$1,-1+SMALL(IF(($B$3:$B$7=H$2)+($C$3:$C$7=H$2),ROW($B$3:$B$7),"X"),ROW()-ROW($2:$2)),--NOT((INDEX($B:$B,SMALL(IF(($B$3:$B$7=H$2)+($C$3:$C$7=H$2),ROW($B$3:$B$7),"X"),ROW()-ROW($2:$2)))=H$2))),"")
Позвольте мне разбить его ...
- логика:
OFFSET(top_of_results,row_number_that_has_Nth_team_score,0_or_1_for_home_or_away)
- это обернуто в
IFERROR
в, где нет, например. 5-ая оценка для команды А - используя часть массива
IF(($B$3:$B$7=H$2)+($C$3:$C$7=H$2),ROW($B$3:$B$7),"X"
мы получаем массив, который имеетROW
номер, если либо (сделано с использованием+
)B
илиC
имеют значение, соответствующее нашей команде заголовок (H$2
) илиX
иначе - , используя
SMALL(...,ROW()-ROW($2:$2))
, мы получаем N-й наименьший ряд, основанный на 1-м месте в ряду 3, 2-й в строке 4 и т. Д. - , чтобы узнать, находится ли он дома или вдали, мы проверяем колонку B на нашей строке, чтобы узнать, соответствует ли она
--NOT((INDEX($B:$B,row_number_that_has_Nth_team_score-O)=H$2))
дает 0 для дома, 1 для прочь, и это используется для смещения колонки
Надеюсь, это имеет смысл. Формулы массива очень мощные, если немного запутать :-) Я рекомендую CPearson's intro для получения дополнительной информации.
Удачи вам!
+0
@ adam12344. Это работало для вас? Не стесняйтесь принимать ответ! – Captain
Нужно ли быть динамическим, чтобы было больше данных? Или всегда будет только 2 значения для каждой команды? – BobbitWormJoe
Должно быть динамическим – Adam12344
Учитывая эту информацию, можно ли изменить текст вашего примера, чтобы сделать все более ясным? На данный момент у вас есть каждая команда, играющая ровно дважды по два. –