[英]Count unique non-blank entries in a range
我在Excel中有这样的数据:
Person1 A A B A C 3
Person2 0
Person3 A B C D E F 6
Person4 A A A 1
我试图找到一个公式来复制每行最后一个单元格中的数字,即与该人相关联的唯一元素的数量(不包括空格)。 因此,例如,即使有三个A,Person1也有3个,因为有A,B和C。 列数是固定的/每个人都相同。 值A,B,C等是字符串(与数字相反)。
可以使用公式来完成吗?
这应该为您工作:
=SUMPRODUCT((B1:G1<>"")/COUNTIF(B1:G1,B1:G1&""))
在工作表中使用的UDF
Public Function GetUniqueCount(ByVal rng As Range) As Long
Dim dict As Object, currCell As Range
Set dict = CreateObject("Scripting.Dictionary")
For Each currCell In rng
If Not IsEmpty(currCell) Then dict(currCell.Value) = 1
Next currCell
GetUniqueCount = dict.Count
End Function
在工作表中使用:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.