请教大神,有没有办法引用多个数组,并将多个数组合计成一个数组,如下图。这里的8次,我是通过数组“=SUM(--(((IFERROR(VALUE(B2:K2),0)>0)+(IFERROR(VALUE(B3:K3),0)>0)>0)))”算出来的,但不是我想要的结果,难点在于怎么引用多个数组出来
简单点的做法:
21行计算出每列的>0的真假,公式=COUNTIFS($A$2:$A$10,$A21,B$2:B$10,">0")>0,其余拉即可;
然后使用COUNTIF函数统计真的次数即可,公式=COUNTIF(B21:K21,TRUE)
温馨提示:若不想展示21行以下可将其隐藏即可;
或者可以用:
=SUM(1*(COUNTIFS($A$2:$A$5,$D9,INDIRECT(CHAR(64+COLUMN($B:$K))&"2:"&CHAR(64+COLUMN($B:$K))&"5"),">0")>0))
其中粗体字$D9是姓名所在单元格。
本回答被提问者采纳N8:
=COUNT(0/MMULT(TRANSPOSE(ROW($2:$1000)^0),(A$2:A$1000=M8)*TEXT(B$2:K$1000,"1;!0;!0;!0")))
CTRL+SHIFT+回车,下拉
简单点的做法:
L列计算出每行的>0的个数,公式=COUNT(B2:K2),其余下拉即可;
然后使用SUMIF函数求和即可,公式==SUMIF(A:A,M8,L:L)
温馨提示:若不想展示L列可将其隐藏即可;
N8
=SUMPRODUCT((A$2:A$10=M8)*(ISNUMBER(B$2:K$10))*(B$2:K$10>0))
下拉即可
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
=SUMPRODUCT((A$2:A$3=M8)*(ISNUMBER(B$2:K$3))*(B$2:K$3>0))-SUMPRODUCT((A$2:A$3=M8)*(ISNUMBER(B$2:K$2))*(ISNUMBER(B$3:K$3))*(B$2:K$3>0))/2