Excel中如何统计两个数值区域的唯一共同值数量?
解决Excel两区域唯一共同值统计问题
问题分析
你之前的公式错误原因是:对区域A1:G2的每个单元格单独判断是否在A5:G6中存在,重复的共同值会被多次计数(比如某值在A1:G2出现2次,就会被加2次),导致结果偏大。
正确公式
适用于Excel 365/2021及以后版本(支持动态数组)
直接输入以下公式即可,无需按组合键:
=ROWS(UNIQUE(FILTER(A1:G2,COUNTIF(A5:G6,A1:G2)>0)))
- 逻辑:先用
FILTER提取A1:G2中在A5:G6存在的所有值,再用UNIQUE去除重复项,最后用ROWS统计去重后的结果行数,即为唯一共同值的数量。
适用于旧版Excel(2019及以前)
输入公式后需按Ctrl+Shift+Enter作为数组公式确认:
=SUM(1/COUNTIF(A1:G2,A1:G2)*(COUNTIF(A5:G6,A1:G2)>0))
- 逻辑:
1/COUNTIF(A1:G2,A1:G2)会对A1:G2中的每个唯一值生成1,重复值生成1/重复次数;*(COUNTIF(A5:G6,A1:G2)>0)筛选出同时存在于A5:G6的值;最后SUM求和,自动抵消重复值的多次计数,得到唯一共同值的数量。
内容的提问来源于stack exchange,提问作者bluetick
相关产品推荐
相关产品推荐

