Найти последнее значение в диапазоне, который не имеет эквивалентного отрицательного значения - PullRequest
0 голосов
/ 14 сентября 2018

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

CODE       DATE                    DATA
120160     07-Jun-18               2.8
120160     07-Jun-18               -2.8
120160     06-Jun-18               4.0
120160     06-Jun-18               -4.0
120160     05-Jun-18               2.5
120160     04-Jun-18               1.2
120160     04-Jun-18               2.2

В наборе данных есть сотни различных кодов.

К кодам часто вносятся незначительные изменения в их данные в конце срока их службы, поэтому 7 июня +2,8 и -2,8. Коды также могут иметь более одного значения + ve на дату. Что мне нужно сделать, это вернуть последнюю дату с суммой более 0.

Я могу составить уникальный список кодов. Я начал с функции index / match / max, чтобы найти последнюю дату в диапазоне, но я не уверен, как вернуть последнюю дату, которая имеет сумму больше 0 (т.е. игнорирует любую дату, которая имеет значение + ve, а затем равнозначное значение).

В моем примере, приведенном выше, он вернется 05-Jun-18.

Большое спасибо за вашу помощь

1 Ответ

0 голосов
/ 14 сентября 2018

Используйте Aggregate, чтобы получить наибольшую дату, соответствующую этим критериям:

=AGGREGATE(14,6,B2:B8/(SUMIFS(C2:C8,A2:A8,E2,B2:B8,B2:B8)<>0),1)

enter image description here

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