excel
Подсчет уникальных ячеек
Поиск…
Использование 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
Использование FREQUENCY () и MATCH ()
=SUMPRODUCT(IF(FREQUENCY(MATCH(A1:A100,A1:A100,0),MATCH(A1:A100,A1:A100,0))>0,1))
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow