Новости:

Новая редакция правил форума: 2.4. Если вопрос или ответ содержится во вложенном файле, все-равно кратко описывайте в сообщении вопрос или суть решения. Это необходимо, чтобы тему можно было найти через поиск.

Главное меню

Кол-во уникальных значений

Автор 0mega, 30.12.2014, 08:26

« назад - далее »

0mega

2003
sub no

С наступающим.
есть список фамилий
Фамилии могут повторяться и/или быть в единственном числе
Как подсчитать ко-во уникальных фамилий ОДНОЙ формулой в ОДНОЙ ячейке  (без потягушек)

Pelena

С наступающим и Вас)
формула массива
="Всего "&СУММ(1/СЧЁТЕСЛИ(B5:B12;B5:B12))&" фамилии"

cheshiki1

вместо СУММ применить СУММПРОИЗВ и тогда будет обычный ввод. :)

Pelena

Ага  :)
А ещё можно поизвращаться, чтобы слово "фамилия" правильно отображалось
="Всего "&СУММПРОИЗВ(1/СЧЁТЕСЛИ(B5:B12;B5:B12))&" фамили"&ЕСЛИ(ОТБР(ОСТАТ(СУММПРОИЗВ(1/СЧЁТЕСЛИ(B5:B12;B5:B12));100)/10)=1;"й";ВЫБОР(ОСТАТ(СУММПРОИЗВ(1/СЧЁТЕСЛИ(B5:B12;B5:B12));10)+1;"й";"я";"и";"и";"и";"й";"й";"й";"й";"й"))

0mega

Цитата: Pelena от 30.12.2014, 08:43

="Всего "&СУММ(1/СЧЁТЕСЛИ(B5:B12;B5:B12))&" фамилии"
Елена, а почему "СЧЁТЕСЛИ()" Вы используете в обратной величине "1/..." ?

Pelena

Это классическая формула для подсчёта количества уникальных значений.
Возьмём, к примеру, фамилию Петров. В Вашем примере она повторяется три раза. СЧЁТЕСЛИ() соответственно выдаст для каждой из этих трёх фамилий результат 3. А если мы берём 1/СЧЁТЕСЛИ(), то на каждую фамилию придётся по 1/3, а в сумме - единица. И так для каждой фамилии, в итоге - сумма этих единиц и есть количество уникальных фамилий

0mega


MCH

Цитата: Pelena от 30.12.2014, 08:56
А ещё можно поизвращаться, чтобы слово "фамилия" правильно отображалось
="Всего "&СУММПРОИЗВ(1/СЧЁТЕСЛИ(B5:B26;B5:B26))&" фамили"&ВПР(ОСТАТ(МАКС(ОСТАТ(СУММПРОИЗВ(1/СЧЁТЕСЛИ(B5:B26;B5:B26))-11;100);9);10);{0;"я":1;"и":4;"й"};2)

0mega

MCH, спасибо
интересное предложение

Kavomatovlfank

Есть список ip. Надо посчитать кол-во уникальных ip и отсортировать по их сумме одним запросом. Кто встречался.

vikttur

Создайте свою тему, прикрепите пример в файле.

zs

#11
Цитата: 0mega от 30.12.2014, 08:26
2003 sub no
MS Excel =СУММ(ЕСЛИ(ЧАСТОТА(ПОИСКПОЗ(A2:A8;A2:A8;0);ПОИСКПОЗ(A2:A8;A2:A8;0))>0;1)) ФМ
ZS5)

0mega

Zc, благодарю за подключение,
я уже воспользовался ответом Елены и подсказкой chechiki1
Ваша формула заслуживает внимания . Изюмчик ковырнул. Спасибо