Функция ROW () ведет себя по-разному внутри SUM () и SUMPRODUCT ()

Problem definition:

Введите любой номер в ячейкуA1, Теперь попробуйте следующие формулы в любом месте первого ряда.

=SUM(INDIRECT("A"&ROW()))

а также

=SUMPRODUCT(INDIRECT("A"&ROW()))

Первая формула оценивает, вторая дает ошибку #VALUE. Это вызваноROW() функция ведет себя по-разному внутриSUMPRODUCT().

В первой формулеROW() возвращается1, Во второй формуле возвращается строка{1} (массив одной длины), хотя формула не была введена как формула CSE.

Почему это происходит?

Background

Мне нужно оценить формулу типа

=SUMPRODUCT(INDIRECT(*range formed by concatenation and using ROW()*)>1)

Это работает с ошибкой. В качестве обходного пути к этой проблеме, я теперь вычисляюROW() в другой камере (в том же ряду, очевидно) и объединить это в моемINDIRECT(), С другой стороны, я также попытался инкапсулировать его в функцию суммы, какSUM(ROW())и это тоже работает.

Я был бы признателен, если бы кто-то мог объяснить (или указать мне на ресурс, который может объяснить), почемуROW() возвращает массив внутриSUMPRODUCT() не входя в CSE.

Ответы на вопрос(3)

Ваш ответ на вопрос