A função ROW () se comporta de maneira diferente dentro de SUM () e SUMPRODUCT ()
Definição de problema:
Digite qualquer número na célulaA1
. Agora tente as seguintes fórmulas em qualquer lugar na primeira linha.
=SUM(INDIRECT("A"&ROW()))
e
=SUMPRODUCT(INDIRECT("A"&ROW()))
A primeira fórmula avalia, a segunda dá um erro #VALUE. Isso é causado peloROW()
função comportando-se de maneira diferente dentroSUMPRODUCT()
.
Na primeira fórmula,ROW()
devolve1
. Na segunda fórmula, a linha retorna{1}
(matriz de um comprimento), mesmo que a fórmula não tenha sido inserida como uma fórmula CSE.
Por que isso acontece?
fundo
Eu preciso avaliar uma fórmula do tipo
=SUMPRODUCT(INDIRECT(*range formed by concatenation and using ROW()*)>1)
Isso está funcionando com um erro. Como solução para esse problema, agora eu calculoROW()
em outra célula (na mesma linha, obviamente) e concatenar que dentro da minhaINDIRECT()
. Como alternativa, eu também tentei encapsulá-lo dentro de uma função de soma, comoSUM(ROW())
e isso também funciona.
Eu certamente apreciaria se alguém pudesse explicar (ou me indicar um recurso que possa explicar) por queROW()
retorna um array dentroSUMPRODUCT()
sem estar inscrito no CSE.