计数与多个crieria
问题描述:
我困住了一个问题。可以说我有在范围A1中的以下数据:K4计数与多个crieria
row1 1 2 3 4 5 6 7 8 9 10
row2 2 3 4 5 6 7 8 9 10 11
row3 3 4 5 6 7 8 9 10 11 12
row4 3 5 6 7 8 9 10 11 12 13
而在范围N1以下数据:P4
1 2 3
2 3 4
3 4 5
11 12 13
我想在范围R1式中:R4
所需的输出应该是R1 = 1,R2 = 2,R3 = 3,R4 = 1
我试图评估第一组号码1 2和3的和从ROW1每一行中检查ROW4并找出匹配多少行所有3个数字和放单元格R1中的值将继续用于所有4组数字。有人可以帮助我一个公式?
感谢
答
你可以在R1使用这个公式向下复制到R4
=SUMPRODUCT((MMULT(COUNTIF(OFFSET(B$1:K$4,ROW(B$1:K$4)-ROW(B$1),0,1),N1:P1),{1;1;1})=3)+0)
虽然我被骗了一下,那里,因为{1;1;1}
是基于列的数量变量N1:P1
(所以是3
),所以对于更通用的版本(这将允许N1:P1
为任意大小的行),您可以使用此“数组公式”
=SUM((MMULT(COUNTIF(OFFSET(B$1:K$4,ROW(B$1:K$4)-ROW(B$1),0,1),N1:P1),TRANSPOSE(COLUMN(N1:P1)^0))=COLUMNS(N1:P1))+0)
与CTRL + SHIFT +证实ENTER
谢谢你的解决方案。我肯定会发现有点难以理解它是如何工作的。我试过阵列版本,它确实工作,但是当我删除列P中的值时,列R中的所有值都变为零。而不是三胞胎,我只是想弄清楚,同样的公式适用于双打或四倍,但它没有奏效。 – Sabha
如果您只想使用N1:O1,则需要将N1:P1中的所有引用更改为N1:O1 .....或者如果要允许N1:P1范围中的空白,则将最终的COLUMNS函数更改为COUNT ,即:= SUM((MM(COUNTIF(OFFSET(B $ 1:K $ 4,ROW(B $ 1:K $ 4)-ROW(B $ 1),0,1),N1:P1),TRANSPOSE(COLUMN(N1: P1)^ 0))= COUNT(N1:P1))+ 0)' –
cool!非常感谢 ! – Sabha