2016-03-19 2 views
1

я следующие результаты превосходят документ:SUMPRODUCT игнорировать строку, если пустой?

CAR|CLASS|CLASS FINISH POSITION| 
1 |5 |1     | 
2 |1 |1     | 
3 |2 |2     | 
4 |  |      | 
5 |3 |3     | 
6 |5 |2     | 
7 |  |      | 
8 |2 |5     | 
9 |5 |      | 
10 |5 |8     | 

Я пытаюсь вычислить их CHAMP классовое положение, где результаты должны выглядеть как этот

CAR|CLASS|CLASS FINISH POSITION|CHAMP CLASS POSITION 
1 |5 |1     |1 
2 |1 |1     |1 
3 |2 |2     |1 
4 |  |      | 
5 |3 |3     |1 
6 |5 |2     |2 
7 |  |      | 
8 |2 |5     |2 
9 |5 |      | 
10 |5 |8     |3 

с этой формулой:

=IF(C2>0,SUMPRODUCT((B2=$B$2:$B$28)*(C2>$C$2:$C$28))+1,"") 

Я в конечном итоге с ПОЛОЖЕНИЕМ КЛАССА ШАМПЫ следующим образом:

CAR|CLASS|CLASS FINISH POSITION|CHAMP CLASS POSITION 
1 |5 |1     |2 
2 |1 |1     |1 
3 |2 |2     |1 
4 |  |      | 
5 |3 |3     |1 
6 |5 |2     |3 
7 |  |      | 
8 |2 |5     |2 
9 |5 |      | 
10 |5 |8     |4 

потому что автомобиль 9 в классе 5 не закончил и не имеет результата класса, он ударяет все позиции класса 5 на 1?

Есть ли способ настроить формулу, чтобы исключить любые результаты, когда позиция отделки класса BLANK?

Очевидно, я могу удалить ячейку класса для автомобиля 9, чтобы она работала, но этот лист будет использоваться для нескольких событий?

Благодаря

ответ

2
=IF(C2>0,SUMPRODUCT((B2=$B$2:$B$28)*(C2>$C$2:$C$28)*($C$2:$C$28<>""))+1,"") 

должно быть достаточно, чтобы игнорировать пустые ячейки

, но вы также можете сделать это как COUNTIFS: -

=IF(C2>0,COUNTIFS($B$2:$B$28,B2,$C$2:$C$28,"<"&C2,$C$2:$C$28,"<>"&"")+1,"") 
+1

СЧЕТЕСЛИ также работает следующим образом: '= IF (C2> 0, COUNTIFS ($ B $ 2: $ B $ 28, B2, $ C $ 2: $ C $ 28, "<" & C2) +1, "") '(нет необходимости в пустой проверке) –

+0

Вы правильно (не могу просто подумать, почему)! –

+1

, в то время как 'is' и' is not' работает с каждым значением, '' <"' and '"> "' будет пропущен для всех не численных ячеек (они не будут считаться). но это для countifs, большинство других функций будут действовать, как пустая ячейка, равна нулю, а пустая строка '=" "' все равно будет текстовой (может быть проверена с исходной формулой, если введено '=" "' в 'C10 'расчет будет правильным);) –

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