Excel: функция поиска в векторном стиле без сортировки

У меня есть таблица Excel (2007), которая состоит из нескольких строк, причем первые несколько выглядят примерно так:

CL    DH    HL    SP    FR    CB    TQ    TT
37    33    27    27    26    25    31    26
25    26    33    32    28    25    26    25
21    28    26    31    26    28    26    28

Они должны появляться в этом порядке, поскольку первая строка также функционирует как заголовки для столбцов.

Мне нужно найти максимальное число в каждой строке, а затем вернуть заголовок столбца, т.е. для данных здесь максимальное значение в первой строке равно 37, поэтому он возвращает CL, затем HL и SP и так далее.

Использование функции LOOKUP в векторной форме требует сортировки строки поиска (что здесь невозможно, поскольку порядок каждой строки различен, и все они используют одинаковые заголовки), поэтому я не могу это использовать. Использование HLOOKUP не требует сортировки данных, но требует, чтобы строка поиска была первой строкой массива, что опять-таки нецелесообразно, поскольку мне нужны заголовки сверху.

По сути, я думаю, что мне нужна функция типа поиска, которая использует векторы, а не один массив, но не требует отсортированных данных. Это возможно?

1 ответ

Решение

Вы можете попробовать индекс / совпадение и большой:

=INDEX($A$1:$H$1, 1, MATCH(LARGE(A2:H2,1), A2:H2, 0))

LARGE выбирает наибольшее число, которое используется точным соответствием, и возвращается INDEX чтобы получить заголовок.

РЕДАКТИРОВАТЬ: Как справедливо указал tigeravatar, вы можете использовать MAX вместо LARGE:

=INDEX($A$1:$H$1, 1, MATCH(MAX(A2:H2), A2:H2, 0))
Другие вопросы по тегам