两个数组相乘时出现Excel错误
我想乘两个数组,我得到一个#Value错误。
只是简要说明表中的内容:
列E被用作基于最后一个特定string的存在的布尔数组
列D用于查找存在相同ID集合的列A.
最后,列B包含基于从列E导出的布尔向量添加的量
一步一步(使用F9)所有片断评估正确,但整个公式没有。
ABCDE ID Amounts ID Code 9 100 1 PT91 8 2000 2 PT92 7 3000 3 PT93 66 4000 4 PT94 5 5000 5 PT95 4 5000 66 PT96 3 5000 7 PT97 2 5000 8 PT93 1 5000 9 PT99
给出错误的公式是:
{= MMULT(移调(IF(RIGHT(E3:E11,2)= “93”,1,0)),偏移(B2,MATCH(D3:D11,A3:A11,0),0))}
预期的结果是7000
非常感谢
西蒙娜
您需要首先从OFFSET(它可以同样返回单元格引用以及单元格值 ,取决于所涉及的构造)“退回”返回,对于这里N是适当的函数,即:
=MMULT(TRANSPOSE(IF(RIGHT(E3:E11,2)="93",1,0)),N(OFFSET(B2,MATCH(D3:D11,A3:A11,0),0)))
您也可以使用较短的非易失性和非数组来获得相同的结果:
=SUMPRODUCT(0+(RIGHT(E3:E11,2)="93"),SUMIF(A3:A11,D3:D11,B3:B11))
问候