Оглавление
В этом уроке вы узнаете, как подсчитывать уникальные значения в Excel с помощью формул и как получить автоматический подсчет уникальных значений в таблице pivot. Мы также обсудим несколько примеров формул для подсчета уникальных имен, текстов, чисел, уникальных значений, чувствительных к регистру, и многое другое.
При работе с большим набором данных в Excel вам часто может понадобиться узнать, сколько дубликат и уникальный И иногда вы можете захотеть подсчитать только отдельный (разные) значения.
Если вы регулярно посещаете этот блог, вы уже знаете формулу Excel для подсчета дубликатов. И сегодня мы рассмотрим различные способы подсчета уникальных значений в Excel. Но для ясности давайте сначала определимся с терминами.
- Уникальный значения - это значения, которые появляются в списке только один раз.
- Отличия значения - это все различные значения в списке, т.е. уникальные значения плюс 1-е вхождение дублирующих значений.
Следующий снимок экрана демонстрирует разницу:
А теперь давайте посмотрим, как можно подсчитать уникальные и отличные значения в Excel с помощью формул и функций PivotTable.
Как подсчитать уникальные значения в Excel
Перед вами обычная задача, которую время от времени приходится решать всем пользователям Excel. У вас есть список данных, и вам нужно узнать количество уникальных значений в этом списке. Как это сделать? Проще, чем вы думаете :) Ниже вы найдете несколько формул для подсчета уникальных значений разных типов.
Подсчет уникальных значений в столбце
Предположим, у вас есть столбец имен в рабочем листе Excel, и вам нужно подсчитать уникальные имена в этом столбце. Решение заключается в использовании функции SUM в сочетании с IF и COUNTIF:
=SUM(IF(COUNTIF( ассортимент , ассортимент )=1,1,0))Примечание Это формула массива, поэтому обязательно нажмите Ctrl + Shift + Enter для ее завершения. После этого Excel автоматически заключит формулу в { фигурные скобки}, как на скриншоте ниже. Ни в коем случае не вводите фигурные скобки вручную, это не сработает.
В данном примере мы подсчитываем уникальные имена в диапазоне A2:A10, поэтому наша формула имеет следующий вид:
=SUM(IF(COUNTIF(A2:A10,A2:A10)=1,1,0))
Далее в этом руководстве мы рассмотрим несколько других формул для подсчета уникальных значений различных типов. И поскольку все эти формулы являются вариациями базовой формулы уникальных значений Excel, имеет смысл разобрать приведенную выше формулу, чтобы вы могли полностью понять, как она работает, и подстроить ее под свои данные. Если кого-то не интересуют технические аспекты, вы можете сразу перейти к следующему разделуследующий пример формулы.
Как работает формула подсчета уникальных значений в Excel
Как вы видите, в нашей формуле уникальных значений используются 3 различные функции - SUM, IF и COUNTIF. Если посмотреть изнутри, то вот что делает каждая функция:
- Функция COUNTIF подсчитывает, сколько раз каждое отдельное значение появляется в указанном диапазоне.
В данном примере,
COUNTIF(A2:A10,A2:A10)
возвращает массив{1;2;2;1;2;2;2;1;2}
.Смотрите также: Как удалить пустые ячейки в Excel - Функция IF оценивает каждое значение в массиве, возвращенном COUNTIF, сохраняет все 1 (уникальные значения) и заменяет все остальные значения нулями.
Таким образом, функция
IF(COUNTIF(A2:A10,A2:A10)=1,1,0)
становитсяIF(1;2;2;1;2;2;2;2;1;2) = 1,1,0,
который превращается в массив{1;0;0;1;0;0;0;1;0}
где 1 - уникальное значение, а 0 - дублирующее значение. - Наконец, функция SUM суммирует значения в массиве, возвращенном IF, и выводит общее количество уникальных значений, что является именно тем, что мы хотели.
Совет. Чтобы увидеть, во что оценивается определенная часть формулы уникальных значений Excel, выделите эту часть в строке формул и нажмите клавишу F9.
Подсчет уникальных текстовых значений в Excel
Если ваш список Excel содержит как числовые, так и текстовые значения, и вы хотите подсчитать только уникальные текстовые значения, добавьте функцию ISTEXT к формуле массива, рассмотренной выше:
=SUM(IF(ISTEXT(A2:A10)*COUNTIF(A2:A10,A2:A10)=1,1,0))
Как вы знаете, функция Excel ИСТЕКСТ возвращает TRUE, если оцениваемое значение является текстом, и FALSE в противном случае. Поскольку звездочка (*) работает как оператор AND в формулах массива, функция ЕСЛИ возвращает 1, только если значение является и текстом, и уникальным, и 0 в противном случае. А после того, как функция SUM сложит все 1, вы получите счетчик уникальных текстовых значений в указанном диапазоне.
Не забудьте нажать Ctrl + Shift + Enter, чтобы правильно ввести формулу массива, и вы получите результат, подобный этому:
Как видно на скриншоте выше, формула возвращает общее количество уникальных текстовых значений, исключая пустые ячейки, числа, логические значения TRUE и FALSE, а также ошибки.
Подсчет уникальных числовых значений в Excel
Чтобы подсчитать уникальные номера в списке данных, используйте формулу массива, как мы только что использовали для подсчета уникальных текстовых значений, с той лишь разницей, что в формуле уникальных значений вместо ISTEXT вы используете ISNUMBER:
=SUM(IF(ISNUMBER(A2:A10)*COUNTIF(A2:A10,A2:A10)=1,1,0))
Примечание. Поскольку Microsoft Excel хранит даты и время в виде порядковых номеров, они также учитываются.
Подсчет уникальных значений с учетом регистра в Excel
Если ваша таблица содержит данные, чувствительные к регистру, самым простым способом подсчета уникальных значений будет создание вспомогательного столбца со следующей формулой массива для определения дубликатов и уникальных элементов:
=IF(SUM((--EXACT($A$2:$A$10,A2)))=1, "Уникальный", "Дубликат")
А затем используйте простую функцию COUNTIF для подсчета уникальных значений:
=COUNTIF(B2:B10, "unique")
Подсчет отличных значений в Excel (уникальные и 1-е дублирующие вхождения)
Чтобы получить количество отдельных значений в списке, используйте следующую формулу:
=SUM(1/COUNTIF( ассортимент , ассортимент ))Помните, что это формула массива, и поэтому вы должны нажать сочетание клавиш Ctrl + Shift + Enter вместо обычного нажатия клавиши Enter.
В качестве альтернативы можно использовать функцию SUMPRODUCT и завершить формулу обычным способом, нажав клавишу Enter:
= СУММАРНЫЙ ПРОДУКТ(1/COUNTIF( ассортимент , ассортимент ))Например, для подсчета отдельных значений в диапазоне A2:A10 можно использовать любой из вариантов:
=SUM(1/COUNTIF(A2:A10,A2:A10))
Или
= СУММАРНЫЙ ПРОДУКТ(1/COUNTIF(A2:A10,A2:A10))
Как работает формула Excel distinct
Как вы уже знаете, мы используем функцию COUNTIF, чтобы узнать, сколько раз каждое отдельное значение встречается в указанном диапазоне. В приведенном выше примере результатом функции COUNTIF является следующий массив: {2;2;3;1;2;2;3;1;3}
.
После этого выполняется ряд операций деления, где каждое значение массива используется как делитель, а 1 - как делимое. Это превращает все дубликаты значений в дробные числа, соответствующие количеству дубликатов. Например, если значение встречается в списке 2 раза, то в массиве образуется 2 элемента со значением 0,5 (1/2=0,5). А если значение встречается 3 раза, то оновыдает 3 элемента в массиве со значением 0.3(3). В нашем примере результат функции 1/COUNTIF(A2:A10,A2:A10))
массив {0.5;0.5;0.3(3);1;0.5;0.5;0.3(3);1;0.3(3)}
.
Пока не понятно? Это потому, что мы еще не применяли функцию SUM / SUMPRODUCT. Когда одна из этих функций складывает значения в массиве, сумма всех дробных чисел для каждого отдельного элемента всегда равна 1, независимо от того, сколько вхождений этого элемента существует в списке. А поскольку все уникальные значения появляются в массиве как 1 (1/1=1), окончательный результат, возвращаемый функциейформула - это общее количество всех различных значений в списке.
Формулы для подсчета различных значений разных типов
Как и в случае с подсчетом уникальных значений в Excel, вы можете использовать вариации основной формулы Excel count distinct для работы с конкретными типами значений, такими как числа, текст и значения с учетом регистра.
Пожалуйста, помните, что все приведенные ниже формулы являются формулами массива и требуют нажатия Ctrl + Shift + Enter .
Подсчет отличных значений, игнорируя пустые ячейки
Если столбец, в котором вы хотите подсчитать отличные значения, может содержать пустые ячейки, следует добавить функцию ЕСЛИ, которая проверит указанный диапазон на наличие пустых ячеек (основная формула Excel distinct, рассмотренная выше, в этом случае вернет ошибку #DIV/0):
=SUM(IF( ассортимент "",1/COUNTIF( ассортимент , ассортимент ), 0))Например, для подсчета отдельных значений в диапазоне A2:A10 используйте следующую формулу массива:
=SUM(IF(A2:A10"",1/COUNTIF(A2:A10, A2:A10), 0))
Формула для подсчета отдельных текстовых значений
Для подсчета отдельных текстовых значений в столбце мы будем использовать тот же подход, который только что использовали для исключения пустых ячеек.
Как нетрудно догадаться, мы просто встроим функцию ISTEXT в нашу формулу Excel count distinct:
=SUM(IF(ISTEXT( ассортимент ),1/COUNTIF( ассортимент , ассортимент ),""))А вот пример реальной формулы:
=SUM(IF(ISTEXT(A2:A10),1/COUNTIF(A2:A10, A2:A10),""))
Формула для подсчета различных чисел
Чтобы подсчитать отдельные числовые значения (числа, даты и время), используйте функцию ISNUMBER:
=SUM(IF(ISNUMBER( ассортимент ),1/COUNTIF( ассортимент , ассортимент ),""))Например, чтобы подсчитать все различные числа в диапазоне A2:A10, используйте следующую формулу:
=SUM(IF(ISNUMBER(A2:A10),1/COUNTIF(A2:A10, A2:A10),""))
Подсчет отличительных значений с учетом регистра в Excel
Аналогично подсчету уникальных значений, чувствительных к регистру, самым простым способом подсчета уникальных значений, чувствительных к регистру, является добавление вспомогательного столбца с формулой массива, который определяет уникальные значения, включая первые дубликаты. Формула в основном такая же, как та, которую мы использовали для подсчета уникальных значений, чувствительных к регистру, с одним небольшим изменением в ссылке на ячейку, которое имеет большое значение:
=IF(SUM((--EXACT($A$2:$A2,$A2)))=1, "Distinct","")
Как вы помните, все формулы массивов в Excel требуют нажатия Ctrl + Shift + Enter .
После завершения работы вышеприведенной формулы вы можете подсчитать "отличные" значения с помощью обычной формулы COUNTIF следующим образом:
=COUNTIF(B2:B10, "distinct")
Если нет возможности добавить вспомогательный столбец в рабочий лист, можно использовать следующий комплекс формула массива для подсчета отличительных значений с учетом регистра без создания дополнительного столбца:
=SUM(IFERROR(1/IF($A$2:$A$10"", FREQUENCY(IF(EXACT($A$2:$A$10, TRANSPOSE($A$2:$A$10)), MATCH(ROW($A$2:$A$10), ROW($A$2:$A$10)), ""), MATCH(ROW($A$2:$A$10), ROW($A$2:$A$10)), 0), 0))))
Подсчет уникальных и отличных строк в Excel
Подсчет уникальных / отличных строк в Excel схож с подсчетом уникальных и отличных значений, с той лишь разницей, что вы используете функцию COUNTIFS вместо COUNTIF, которая позволяет вам указать несколько столбцов для проверки уникальных значений.
Например, чтобы подсчитать уникальные или отличные имена на основе значений в столбцах A (Имя) и B (Фамилия), используйте одну из следующих формул:
Формула для подсчета уникальных строк:
=SUM(IF(COUNTIFS(A2:A10,A2:A10, B2:B10,B2:B10)=1,1,0))
Формула для подсчета отдельных строк:
=SUM(1/COUNTIFS(A2:A10,A2:A10,B2:B10,B2:B10))
Естественно, вы не ограничены подсчетом уникальных строк только на основе двух столбцов, функция Excel COUNTIFS может обрабатывать до 127 пар диапазон/критерий.
Подсчет отдельных значений в Excel с помощью PivotTable
Последние версии Excel 2013 и Excel 2016 имеют специальную функцию, которая позволяет автоматически подсчитывать отдельные значения в таблице pivot. Следующий скриншот дает представление о том, как Excel Счетчик отличий выглядит как:
Чтобы создать сводную таблицу с отчетливым подсчетом для определенного столбца, выполните следующие действия.
- Выберите данные для включения в сводную таблицу, переключитесь на вкладку Вставка вкладка, Таблицы группу, и нажмите кнопку PivotTable кнопка.
- В Создание PivotTable В диалоговом окне выберите, где разместить таблицу pivot - в новом или существующем рабочем листе, и обязательно выберите параметр Добавьте эти данные в модель данных флажок.
Вы также можете дать пользовательское имя своему Distinct Count, если хотите.
Готово! Созданная таблица будет отображать количество отличий, как показано на самом первом снимке экрана в этом разделе.
Совет. После обновления исходных данных не забудьте обновить таблицу PivotTable, чтобы привести счетчик отличий в актуальное состояние. Чтобы обновить таблицу pivotTable, просто нажмите кнопку Обновить кнопка на Анализируйте во вкладке Данные группа.
Вот как подсчитываются отличные и уникальные значения в Excel. Если кто-то хочет поближе познакомиться с формулами, рассмотренными в этом руководстве, вы можете скачать образец рабочей книги Excel Count Unique.
Я благодарю вас за чтение и надеюсь увидеть вас снова на следующей неделе. В следующей статье мы обсудим различные способы поиска, фильтрации, извлечения и выделения уникальных значений в Excel. Пожалуйста, оставайтесь с нами!