我正在寻找一个公式来计算两个单元格范围之间匹配数的数量。我想用例子来解释。这可能令人困惑。
A1:E1={1,2,3,4,5}
和A2:E2={2,1,3,5,4}
:这里有两组具有相同的数字,因此有5个匹配。 (订单并不重要)
A1:E1={1,1,1,1,1}
和A2:E2={1,2,1,1,1}
:这里有两组有四个1,所以这是4场比赛。
A1:E1={2,2,1,1,1}
和A2:E2={2,2,2,1,1}
:此处两组有两个2,两个1匹配,所以共有4个匹配。
A1:E1= {1,4,4,3,7}
和A2:E2={4,3,5,6,1}
,在这种情况下,两个组都有一个4,一个1,一个3.所以它总共有3个匹配。
如果有任何不清楚的地方,请告诉我。这里具有挑战性的部分是重复。
答案 0 :(得分:3)
我知道有人会更简洁地做到这一点,但这确实有效
=SUM(IF(FREQUENCY(A1:E1,N(OFFSET(A1,ROW(A1:E2)-ROW(A1),COLUMN(A1:E2)-COLUMN(A1),1,1)))<
FREQUENCY(A2:E2,N(OFFSET(A1,ROW(A1:E2)-ROW(A1),COLUMN(A1:E2)-COLUMN(A1),1,1))),
FREQUENCY(A1:E1,N(OFFSET(A1,ROW(A1:E2)-ROW(A1),COLUMN(A1:E2)-COLUMN(A1),1,1))),
FREQUENCY(A2:E2,N(OFFSET(A1,ROW(A1:E2)-ROW(A1),COLUMN(A1:E2)-COLUMN(A1),1,1)))))
我们的想法是使用偏移量组合两个列表,然后比较频率。较低的频率是将要采用的频率。
添加了一个额外的案例 - 前四个给出了正确的答案,如果你只是对两个列表进行排序并进行比较,但最后一个没有。
答案 1 :(得分:0)
尝试以下两次尝试:
{=SUM(COUNTIF(A1:A5,B1:B5))}
或者
{=SUM(IF(COUNTIF(A1:A5,B1:B5)=1,1,0))+SUM(IF(COUNTIF(A1:A5,B1:B5)>1,1,0))}
两者都需要使用 Ctrl + Shift + Enter
作为数组输入答案 2 :(得分:0)
这可以做到,但它只需要很少的步骤。它仅在匹配值为0-9时才有效。
首先,在单元格=CONCATENATE(A2,B2,C2,D2,E2)
中输入此公式I2
并将其拖到底部。
然后在单元格J2中输入此公式=SUBSTITUTE(I2,A1,"",1)
,并将其拖到列N
和底部。
最后,在单元格=5-LEN(N2)
中输入此公式G2
,然后将其复制/粘贴到搜索值旁边。
答案 3 :(得分:0)
不确定这是否能解决您的问题,但数组公式(点击 Ctrl + Shift + 输入在一起)会得到与你在这里说的相同的结果:
=SUMPRODUCT(--(SMALL($A2:$E2,COLUMN($A2:$E2))=SMALL($A1:$E1,COLUMN($A1:$E1))))
我所做的是对两行进行排名并计算匹配的数量。但请告诉我这是否涵盖了您所拥有的所有情景。