Как посчитать количество различных значений в диапазоне?

У меня есть большая таблица, которая уже организована с использованием фильтров и т. д. Я хотел бы добавить сводку под некоторыми столбцами, которые содержат количество различных значений в этом столбце.

нет функции =COUNTDISTINCT(A2:A100) Так что я могу сделать вместо этого? (Excel 2003)

Я не могу использовать ответы этот же вопрос потому что я не хочу изменять таблицу или фильтрацию. Мне нужен дополнение в листе, не модификации.

8
задан Community
07.02.2023 11:30 Количество просмотров материала 3026
Распечатать страницу

7 ответов

=SUMPRODUCT((A2:A100 <> "")/COUNTIF(A2:A100,A2:A100 & ""))

сделает это без использования формулы массива.

31
отвечен Lance Roberts 2023-02-08 19:18

нашел здесь который кажется невероятным окольным способом его решения. Но эй, это работает...

=сумм(если(СЧЕТЕСЛИ(А2:А100,А2:А100)=0, "", 1/СЧЕТЕСЛИ(А2:А100,А2:А100)))

и нажмите клавишу Ctrl+Shift+введите. Нажатие только введите даст неправильный результат.

7
отвечен Torben Gundtofte-Bruun 2023-02-08 21:35

нашел два ресурса для вас:

http://www.excelforum.com/excel-worksheet-functions/365877-count-distinct-values.html

и

http://www.cpearson.com/excel/Duplicates.aspx

вы должны быть в состоянии найти приемлемое решение оттуда.

1
отвечен Sux2Lose 2023-02-08 23:52

в этой статье показывает это для текстовых значений:

=SUM(IF(FREQUENCY(IF(LEN(C3:C25)>0,MATCH(C3:C25,C3:C25,0),""), IF(LEN(C3:C25)>0,MATCH(C3:C25,C3:C25,0),""))>0,1))

и это для числовых значений:

=SUM(IF(FREQUENCY(C3:C25, C3:C25)>0,1))

в этой статье показывает похожие формулы, но также показывает метод с использованием фильтров.

подсчет количества уникальных значений с помощью фильтра

Вы можете использовать расширенный фильтр, чтобы извлечь уникальные значения из столбца данных и вставки их на новое место. Затем можно использовать функцию ROWS для подсчитайте количество предметов в новом ассортименте.

  1. убедитесь, что первая строка в столбец имеет заголовок столбца.
  2. в меню Данные выберите пункт фильтр и нажмите кнопку Расширенный фильтр.
  3. в диалоговом окне Расширенный фильтр нажмите кнопку Копировать в другое расположение.
  4. если диапазон, который вы подсчитываете, еще не выбран, удалите любую информацию в поле диапазон списка, а затем щелкните столбец (или выберите диапазон), который содержит ваши данные.
  5. в поле копировать в удалите любую информацию в поле или щелкните в поле, а затем щелкните пустой столбец, в который требуется скопировать уникальные значения.
  6. установите флажок только уникальные записи и нажмите кнопку ОК.

    уникальные значения из выбранного диапазона копируются в новый столбец.

  7. в пустой ячейке под последней ячейкой диапазона введите функцию ROWS. Использовать ряд уникальных значения, скопированные в качестве аргумента. Например, если диапазон уникальных значений B1: B45, введите:

    = Строки (B1:B45)

1
отвечен Dennis Williamson 2023-02-09 02:09

=SUM(1/COUNTIF (A2:A100;A2:A100))

подтвердить нажатием Ctrl + Shift+Enter

для каждой ячейки, он подсчитывает, сколько раз это происходит, и summes обратные все эти ценности. Предположим, некоторая строка или число occus 5 раз. Его обратное значение равно 0.2, которое суммируется 5 раз, поэтому добавляется 1. В конце концов, это дает количество различных значений.

Примечание: не работает, когда пробелы происходят!

1
отвечен user221470 2023-02-09 04:26

попробуйте эту ссылку. Здесь показано, как подсчитать уникальные значения в списке, в котором отсутствуют пустые ячейки.

http://www.functioninexcel.com/lists-arrays/count-unique-values-in-a-list/

= сумма (если (частота (совпадение (список, Список, 0), совпадение (список, Список , 0 )) > 0 , 1 ))

где "List" - ваш диапазон ячеек, например:

List = $A$2:$A $ 12 ИЛИ- Список = смещение($в$1,,,матч( репт("з",255) , $а:$а )) -ИЛИ- List = смещение ($A $ 1,,,совпадение( значение (rept("9",255)) , $A:$A))

0
отвечен Charles Hunt 2023-02-09 06:43

=SUM(IF(FREQUENCY(IF(SUBTOTAL(3,OFFSET(A2:A100,ROW(A2:A100)-ROW(A2),0,1)),MATCH("~"&A2:A100,A2:A100&"",0)),ROW(A2:A100)-ROW(A2)+1),1))

обязательно нажмите CONTROL + SHIFT+ENTER после вставки этой формулы. Это для ряда A2: A100, регулирует ряд соответственно.

0
отвечен Vlada 2023-02-09 09:00

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх