Подсчитать значения в столбце, игнорируя дубликаты - PullRequest
1 голос
/ 16 марта 2019

Не совсем пользователь Excel, но то, что казалось простым, оказалось для меня очень трудным.У меня проблемы, потому что я не могу придумать хороший и чистый (или любой) способ заставить его работать.

Что у меня здесь:

enter image description here

Мне нужно создать новую колонку, которая будет указывать количество сотрудников в каждой профессии, игнорируя дубликаты (выделено).

Формула количества имен работает, так что, возможно, этоможет быть использован ?Или, может быть, это только в пути и должно быть очищено.

Это просто: = COUNTIFS (A: A; A2)

Попытка поиска в течение долгого времени не нашла ничего подходящего.Любая помощь или совет будет высоко ценится.Надеюсь, я объяснил это ясно.

Спасибо

Ответы [ 4 ]

3 голосов
/ 16 марта 2019

Без вспомогательных столбцов:

Два варианта, D2:

{=SUM(--(FREQUENCY(IF($B$2:$B$9=C2,MATCH($A$2:$A$9,$A$2:$A$9,0)),ROW($A$2:$A$9)-ROW($D$1)+1)>0))}

Или положить в E2:

{=SUMPRODUCT((($B$2:$B$9=C2))/COUNTIFS($B$2:$B$9,$B$2:$B$9&"",$A$2:$A$9,$A$2:$A$9&""))}

Обратите внимание, что оба являются формулами массива и должны вводиться с помощью Ctrl Shift Введите

enter image description here

1 голос
/ 16 марта 2019

Количество профессий для разных сотрудников

со вспомогательным столбцом

sample outcome

Уникальные и отличительные значения непросты.Использование вспомогательного столбца полезно для идентификации любого из них в сочетании с расширяющимся диапазоном:

=SUMPRODUCT((A2=$A$1:$A1)*(C2=$C$1:$C1))
Relative Rows: ^ ^

  • Вставить в ячейку E2.
  • Копировать Перетащите формулу вниз с того места, куда вставили.

Относительные номера строк, указанные выше, увеличиваются по мере того, как формула копируется вниз.Это создает все больший и больший диапазон для сравнения.Расширяющийся ассортимент.

В этом случае расширяющийся диапазон - это диапазон уже проверенных значений.Во многих случаях диапазон результатов расширяется и проверяется, чтобы исключить размещение дубликатов уже опубликованных результатов в последующих строках списка результатов.

  • Значение столбца помощника - это количество раз, которое пара имен и профессий ранее появлялась.Ноль предыдущих появлений говорит нам, что это первое происшествие.Мы будем считать только нули (первое вхождение) в основной формуле.

Основная формула для подсчета отдельных сотрудников в каждой профессии:

=COUNTIFS( $C$2:$C$9, C2, $E$2:$E$9, 0)

  • Вставить в ячейку D2.
  • Копировать Перетащите формулу из того места, где она была вставлена.

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

1 голос
/ 16 марта 2019

SUMPRODUCT «Сделки» в массивах 3

У вас могут быть сотрудники с одинаковыми именами (David, Michael) в разных профессиях (Tech & Worker, Tech & Economy).Чтобы отличать их друг от друга, в B2 вы можете использовать:

=SUMPRODUCT((A$2:A$21=A2)*(C$2:C$21=C2))

В D2 вы можете использовать:

=SUMPRODUCT((1/B$2:B$21)*(C$2:C$21=C2))

enter image description here

1 голос
/ 16 марта 2019

Добавьте последний столбец, который является объединением предыдущих 3 столбцов, затем используйте

=SUMPRODUCT(1/COUNTIF(D2:D9,D2:D9))

image

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

Если вы преобразуете свои данные в таблицу Excel, выбрав заполненную ячейку в диапазоне и нажав Ctrl + T , тогда формулы будут автоматически заполнены в последнем столбце. Затем вы можете ссылаться на столбцы таблицы в формуле, и вам не нужно будет изменять формулу при добавлении строк.

...