使用 COUNTIF()
=SUMPRODUCT((A1:A100<>"")/COUNTIF(A1:A100,A1:A100&""))
计算 A1:A100 中的唯一单元格值,不包括空白单元格和空字符串(“”)。
它是如何做到的?例:
A1:A100 = [1, 1, 2, "apple", "peach", "apple", "", "", -, -, -, ...]
需要在数组中添加 “” 以将空白单元格( - )转换为空字符串(“”)。结果:
A1:A100&"" = ["1", "1", "2", "apple", "peach", "apple", "", "", "", "", "", ...]
在这个技巧之后,可以应用 COUNTIF()
。 和都被视为相同:
COUNTIF(A1:A100,A1:A100&"") = [2, 2, 1, 2, 1, 2, 94, 94, 94, 94, 94, ...]
要获得所有唯一单元格的计数,不包括空格和“”,我们可以划分
(A1:A100<>""), which is [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, ...]
通过我们的中间结果,COUNTIF(A1:A100,A1:A100&"")
,并总结了值。
SUMPRODUCT((A1:A100<>"")/COUNTIF(A1:A100,A1:A100&""))
= (1/2 + 1/2 + 1/1 + 1/2 + 1/1 + 1/2 + 0/94 + 0/94 + 0/94 + 0/94 + 0/94 + ...)
= 4