1

Ссылаясь на скриншот ниже, у меня есть вопрос о функции индекса в MS Excel. Может ли INDEX на самом деле вернуть массив? например, у меня есть числа в ячейках A1:A5, как видно на скриншоте. В ячейках C1:C5 я поместил формулу массива

{=INDEX(A1:A5,ROW(A1:A5))}

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

Однако, когда я использую формулу, как эта

{=SUM(INDEX(A1:A5,ROW(A1:A5)))}

Я ожидал возвращаемого значения 15, но я получаю только первый элемент массива, т.е. 1.

Это так? Может ли INDEX вернуть массив, который можно использовать в других формулах на основе массива?

1 ответ1

1
=SUM(INDEX(A1:A5,0,1))

С 0 в качестве аргумента строки, INDEX вернет весь столбец

Поскольку у вас есть только один столбец, вы также можете использовать:

=SUM(INDEX(A1:A5,0))

что, конечно, было бы эквивалентно

=SUM(A1:A5)

Чтобы расширить комментарий @BarryHoudini, для несмежного массива возвратов из INDEX вы можете использовать что-то вроде:

=SUM(INDEX(myRange,N(IF(1,{1,3,5}))))

который в вашем примере массива вернет 9

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