2016-09-02 9 views
4

В Excel У меня есть данные о результатах, которые упорядочены в списке, подобном приведенному ниже. Я ищу формулу для ранжирования столбца «класс». Я придумал следующее, которое, похоже, работает, но без учета «уникальной» колонки RaceID.Ранжировать повторяющиеся текстовые значения в Excel по порядку появления для уникальных критериев

={COUNTIF(Class,"<"&C2)+SUM(IF(C2=$C$2:C2, 1, 0))-(SUMPRODUCT(--(C2>C$2:C$11))+1)} 

Где «класс» относится к «C: C».

К сожалению, это будет производить результат «4» для класса А в ячейке E7, несмотря на то, Дэниел стал победителем гонки на RaceID 0002.

Пятая колонна является желаемый выход.

Col A  Col B   Col C Col D  Col E 
RaceID Overall Pos Class Name  Class rank 
0001  1    A  Jack  1 
0001  2    A  Matt  2 
0001  3    A  Daniel 3 
0001  4    B  Gordon 1 
0001  5    B  Phillip 2 
0002  1    A  Daniel 1 
0002  2    A  Matt  2 
0002  3    B  Günther 1 
0002  4    B  Gordon 2 
0002  5    A  Jack  3 

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

+0

Вы имеете в виду E7 is '1' в вашем примере? – pnuts

+0

Да - игнорировать строку с заголовками столбцов ... –

ответ

1

Если меня правишь, то эта формула не-массив будет делать:

=COUNTIFS(A:A,A2,B:B,"<"&B2,C:C,C2)+1 

EDIT

Если первенствует не поддерживает COUNTIFS то и эта формула будет делать:

{=SUM(IF(($A$1:INDEX(A:A,MATCH("zzz",D:D))=A2)*($C$1:INDEX(C:C,MATCH("zzz",D:D))=C2),$B$1:INDEX(B:B,MATCH("zzz",D:D))<B2)*1)+1} 

Это формула массива и ее необходимо подтвердить ctrl + смещение + введите.

+0

Очень хорошо, и намного проще, чем я ожидал. Я забыл о возможности использования 'COUNTIFS'. Спасибо. –

+0

Добро пожаловать :) –

 Смежные вопросы

  • Нет связанных вопросов^_^