excel公式总结数组

我不知道为什么总结数组公式不会返回正确的结果。 公式是:

=SUM(INDEX($C$4:$C$12,TRANSPOSE(OFFSET(K17,0,0,1,COUNT(K17:S17))))) 

我想要做的是根据K17:S17值从$C$4:$C$12select多个值,然后对其进行求和。 在行K17:S17中可能有1到9个正整数(从1到9),这决定了从C4:C12select哪一行。

当我只使用INDEX($C$4:$C$12,TRANSPOSE(OFFSET(K17,0,0,1,COUNT(K17:S17))))作为数组函数时,它返回我想要正确设置的值。 但在frot中添加总和只会返回这个集合中的第一个值。

为了传递一个数组作为INDEXrow_numcol_num参数,需要一点强制:

https://excelxor.com/2014/09/05/index-returning-an-array-of-values/

另外,如果可能的话,最好避免可变的OFFSET结构。

=SUM(INDEX($C$4:$C$12,N(IF({1},K17:INDEX(K17:S17,MATCH(9.9E+307,K17:S17))))))

顺便说一下,这不需要CSE

编辑 :如果K17:S17范围内的最大值是9,我们可以用10 :9取代9.9E+307

=SUM(INDEX($C$4:$C$12,N(IF({1},K17:INDEX(K17:S17,MATCH(10,K17:S17))))))

问候