繁体   English   中英

根据B列中准则的移动范围,对A列中的唯一值进行计数

[英]Count unique values in column A based on a moving range of criteria in column B

好的,这是我的第一个问题,希望我们能很好地解释一下...

本质上,我想计算A列中唯一值的数量,但要从B列中具有落在指定范围内的值的那些子集中计算。

这是一个例子:

ColumnA     ColumnB
potato      29.1
potato      29.7
potato      30.3
potato      31.0
bean        31.6
apple       32.2
apple       32.8
bean        33.5
bean        34.0
apple       34.3
potato      35.0

Count b/w 29-31:    1               
Count b/w 30-32:    2           
Count b/w 31-33:    3               
Count b/w 32-34:    2           
Count b/w 33-35:    3           

换句话说,我想知道在每个范围内(由B列指定)有多少个唯一的项目,并且我希望将其向下移动到一系列重叠的范围内。

到目前为止,我能想到的最好的方法是一个COUNTIFS公式,该公式计算每个范围内的记录总数。 例如:

= COUNTIFS(B1:B11,“> = 29”,B1:B11,“ <= 31”)

= COUNTIFS(B1:B11,“> = 30”,B1:B11,“ <= 32”)

= COUNTIFS(B1:B11,“> = 31”,B1:B11,“ <= 33”)

等等...

显然,这甚至都没有引用A列。我根据类似的问题尝试了一些不同的数组公式,但是它们始终在解决一个稍有不同的问题,所以我在很大程度上没有成功。

任何帮助,不胜感激! 谢谢。

您将使用以下数组公式:

=SUM(IF(($B$2:$B$12>=A16)*($B$2:$B$12<=B16),(1/COUNTIFS($A$2:$A$12,$A$2:$A$12,$B$2:$B$12,">=" & A16,$B$2:$B$12,"<=" & B16))))

退出编辑模式时,必须通过Ctrl-Shift-Enter确认存在和数组公式。 如果正确完成,则Excel将自动在公式周围放置{}

在此处输入图片说明

它会找到B中数据在范围之间的所有行,然后使用1 / COUNTIF()查找唯一值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM