计算两个范围之间的匹配数量

我正在寻找一个公式来计算两个单元格范围内匹配的数字的数量。 我想用例子来解释。 这可能会令人困惑。

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} :这里两组有两个2s,两个1s匹配,所以是4个匹配总。

A1:E1= {1,4,4,3,7}A2:E2={4,3,5,6,1} ,在这种情况下,两个组都有一个A2:E2={4,3,5,6,1} 3.所以它是共有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))))) 

这个想法是,你使用偏移量来组合两个列表,然后比较频率。 频率越低越好。

在这里输入图像说明

已经添加了一个额外的案例 – 前四个给出正确的答案,如果你只是sorting两个列表,并比较它们,但最后一个不。

尝试下面的两个尝试:

 {=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作为数组input

这可以完成,但它需要几个步骤。 它只会在匹配值从0到9时才起作用。 首先在单元格I2input该公式=CONCATENATE(A2,B2,C2,D2,E2) ,并将其拖动到底部。 在这里输入图像说明

然后在单元格J2中input此公式=SUBSTITUTE(I2,A1,"",1) ,并将其拖到N列底部。

在这里输入图像说明

最后,在G2单元格中input该公式=5-LEN(N2) ,并将其复制/粘贴到search值的旁边。

在这里输入图像描述

不知道这是否会解决你的问题,但是这个数组公式 (点击Ctrl + Shift + Enter一起)将得到相同的结果,

 =SUMPRODUCT(--(SMALL($A2:$E2,COLUMN($A2:$E2))=SMALL($A1:$E1,COLUMN($A1:$E1)))) 

我所做的是排名两个行,并计算有多less匹配。 但是,让我知道这是否会涵盖你所有的场景。