Индекс Excel: ошибка ссылки при использовании функции индекса - PullRequest
0 голосов
/ 18 марта 2019

enter image description here

Я использую формулу как:

=INDEX(B1:G1,H3)

Не работает.даже жесткие похожие посты присутствуют, я не могу найти проблему с этим.

Я на самом деле делаю максимум из всех сущностей строк, таких как:

=MAX(B2:G2)

и выполняю

=INDEX(B1:G1,H2)

Работает для первого ряда, а не для другого

Ответы [ 2 ]

0 голосов
/ 18 марта 2019

Индекс использует H3 для определения возвращаемого столбца.Вот почему Row1 работает.Он находит столбец 6 (между B1: G1) и возвращает результат.Это только случайность, что это правильный ответ.Если бы вы подставили 5 в ячейку H2, он бы также возвратил столбец 5.В других показанных примерах функция max возвращает индекс столбца, который находится за пределами того, что находится в массиве (B1: G1 имеет длину 6 столбцов).

Чтобы исправить, соедините Index с функцией Match.Функция Match выполнит поиск в массиве (B2: G2; B3: G3 и т. Д.) И вернет номер столбца соответствующего столбца, а затем передаст его в функцию Index, чтобы получить правильный результат.

Ваша окончательная формула будет выглядеть следующим образом: = INDEX ($ B $ 1: $ G $ 1, MATCH (H2, B2: G2, 0))

0 голосов
/ 18 марта 2019

INDEX хочет относительную позицию, а не значение.Вам нужно добавить МАТЧ:

=INDEX($B$1:$G$1,MATCH(H2,B2:G2,0))

Матч вернет относительную позицию матча.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...