Excel中统计各行与模板行对应位置相等值的数量
Excel中统计各行与模板行对应位置相等值的数量
嗨,我来帮你搞定这个统计需求!你说的这种按对应位置逐一比对、统计匹配数量的场景,用SUMPRODUCT其实完全能解决,只是之前可能没找对写法~
假设你的模板行是第1行(单元格范围是A1:E1),想要统计第2行的匹配数量,你可以在F2单元格输入这个公式:
=SUMPRODUCT(--(A2:E2=A1:E1))
我来拆解一下这个公式的逻辑:
A2:E2=A1:E1:这部分会逐个对比第2行和模板行对应位置的单元格,返回一个由TRUE(匹配)和FALSE(不匹配)组成的数组--:这个符号的作用是把布尔值转换成数字——TRUE会变成1,FALSE变成0SUMPRODUCT:最后把这些1和0加起来,得到的就是当前行与模板行匹配的单元格总数
拿你的例子验证一下:
- 第2行(A,B,X,Y,10)和模板行(A,B,C,D,10)比对,有3个位置匹配,公式返回3,完全符合你的预期
- 第3行(A,B,C,D,20)和模板行比对,有4个位置匹配,公式返回4,也没问题
你只需要把F2单元格的公式下拉填充到下面的行,就能批量统计每一行的匹配数量了。如果你的模板行不是第1行,只要把公式里的A1:E1改成模板行的实际范围就行,比如模板在第5行就写成A5:E5。
顺带说一句,COUNTIF确实不适合这个场景,因为它只能统计某个区域内符合单一条件的单元格数,没法实现按位置逐一对应比对的逻辑,所以你之前用它没成功是很正常的~
备注:内容来源于stack exchange,提问作者Pavel Oganesyan
相关产品推荐
相关产品推荐

