Подсчет строк, соответствующих нескольким критериям, только если значение появляется впервые - PullRequest
1 голос
/ 30 апреля 2019

У меня есть таблица PEOPLE с столбцами ID и AGE и другие столбцы, которые не имеют отношения к этому вопросу.У меня может быть две строки с одинаковым идентификатором (это происходит, если изменяются данные одного или нескольких несоответствующих столбцов, я дублирую строку, чтобы сохранить историю. К сожалению, я не могу изменить это поведение и поместить возрасты в другую таблицу.)

Чего я хочу добиться, так это подсчитать количество людей по возрасту, только если идентификатор появляется впервые.Я попытался сделать это следующим образом (я использую счетчики, потому что я проверяю несколько столбцов, но здесь важен только ВОЗРАСТ):

=COUNTIFS(PEOPLE[AGE];AGE_DISTRIBUTION[AGE])

Где AGE_DISTRIBUTION[AGE] содержит значения возраста.

Это работает нормально, пока у меня нет дублирующего идентификатора, однако, когда я дублирую строки, формула считает эти дубликаты.Как я могу избежать этого (то есть, считая только первое вхождение каждого идентификатора)

Это приводит к чему-то вроде этого:

ЛЮДИ Таблица:

| ID | Age | ... |
|  1 |  32 | ... |
|  2 |  42 | ... |
|  1 |  32 | ... |

AGE_DISTRIBUTION Таблица:

| Age | Count |
| ... | ...   |
|  32 | 2     |  <-- here I should have 1 and not 2
| ... | ...   |
|  42 | 1     |
| ... | ...   |

Заранее благодарю за помощь.

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

1 Ответ

0 голосов
/ 01 мая 2019

Я не совсем уверен, что это то, что вы имели в виду, но:

enter image description here

Используемая формула переводится в:

{=SUM(--(FREQUENCY(IF(Table1[AGE]=[@AGE],Table1[ID]),Table1[ID])>0))}

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

И после расширения:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...