2014-01-17 3 views
0

Я пытаюсь создать панель мониторинга, которая найдет самые большие десять значений на основе данных в столбце D и отобразит содержимое столбца C, исключив из выбора любую строку, которая содержит определенное значение в столбце B.Subject = LARGE к состоянию

настоящее время я использую =INDEX($C$1:$C$100,MATCH(LARGE($D$1:$D$100,1),$D$1:$D$100,0)) найти наибольшее значение D и отображения C.

Я не могу понять, как исключить из LARGE вызова все строки, которые имеют SKIPME в столбце B.

+1

Я предполагаю, что вы хотели сказать: ... что будет найти 10 ** наибольшие ** значения – Edward

+0

Исправить. Благодарю. – Teach42

ответ

1

Вы можете использовать инструкцию IF, чтобы сделать это:

=INDEX($C$1:$C$100,MATCH(LARGE(IF($B$1:$B$100<>"SKIPME",$D$1:$D$100),1),$D$1:$D$100,0)) 

Кроме того, что он также преобразует формулу в уравнение массива, так что теперь вы должны нажать Ctrl + SHIFT + Введите, чтобы заставить его работать.

Вы также можете использовать эту функцию, эквивалентную, называемый также с ЭПС, но немного короче:

=INDEX($C$1:$C$100,MATCH(LARGE(($B$1:$B$100<>"SKIPME")*$D$1:$D$100,1),$D$1:$D$100,0)) 

Или, если вы ищете только для самого большого значения, то MAX работает точно также:

=INDEX($C$1:$C$100,MATCH(MAX(($B$1:$B$100<>"SKIPME")*$D$1:$D$100),$D$1:$D$100,0)) 
+0

Или, может быть, даже немного другой подход с '= INDEX ($ C $ 1: $ C $ 100, MATCH (1, - (D1: D100 = MAX (D1: D100 * (B1: B100 <>" skipme "))) , 0)) '? – Jerry

+0

Не могу сделать MAX (я думаю), потому что я хочу повторить это, чтобы создать список «Top 10 values». Таким образом, использование LARGE с 2-10. – Teach42

+0

@ Teach42 Вот почему я сказал _if_. Я дал вам некоторые варианты, потому что у меня ограниченные знания о том, что у вас есть и что вы пытаетесь сделать. – Jerry

1

для того, чтобы избежать проблем с повторяющимися значениями в столбце D вы можете использовать эту установку:

в F2 до F11 список значений от 1 до 11

В G2 использовании эта формула подтверждается CTRL + SHIFT + ENTER и скопировал вниз, чтобы получить соответствующие значения из столбца D

=IFERROR(LARGE(IF(B$2:B$100<>"SKIPME",IF(D$2:D$100<>"",D$2:D$100)),F2),"")

затем для получения элементов столбца C для верхних 10 значений эта формула используется в H2, подтвержденном CTRL + SHIFT + ENTER и скопировал вниз

=IF(G2="","",INDEX(C$2:C$100,SMALL(IF(B$2:B$100<>"SKIPME",IF(D$2:D$100=G2,ROW(D$2:D$100)-ROW(D$2)+1)),COUNTIF(G$2:G2,G2))))

Если есть меньше, чем 10 значений квалификационных вы получаете заготовки - см примера here

+0

+1 Правда, я не думал о дубликатах ^^; – Jerry

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