промежуточный итог 103, если удовлетворяет определенному условию - PullRequest
0 голосов
/ 10 февраля 2019

У меня есть формула массива, которая ищет максимальное значение в указанном диапазоне ячеек.В этом случае у меня есть значение в ячейке A2 (польский).Конечно, я запускаю формулу, нажимая Ctrl + Shift + Enter.

Я использую формулу MAX, чтобы найти самое высокое значение в Листе 2:

{=MAX(IF(Sheet2!$B$2:$B$74=A2;Sheet2!$C$2:$C$74))}

Я хотел бы сделать то же самоес формулой MIN, поэтому мне нужно найти самое низкое значение, кроме 0. Моя рабочая формула ниже:

{=MIN(IF(SUBTOTAL(103;OFFSET(Sheet2!$C$2:$C$74;ROW(Sheet2!$C$2:$C$74)-ROW(Sheet2!$C$2);0;1));IF(Sheet2!$C$2:$C$74>0;Sheet2!$C$2:$C$74)))}

Проблема в том, что она учитывает все значения, а не значения из указанного диапазона.Мне нужно добавить IF (Sheet2! $ B $ 2: $ B $ 74 = A2, поэтому он ищет минимальное значение только в диапазоне, указанном в ячейке A2, но я не знаю, куда поместить этот фрагмент формулы. Я пытался использовать ANDв последней формуле IF, но она не работает.

{=MIN(IF(SUBTOTAL(103;OFFSET(Sheet2!$C$2:$C$74;ROW(Sheet2!$C$2:$C$74)-ROW(Sheet2!$C$2);0;1));IF(AND(Sheet2!$C$2:$C$74>0;Sheet2!$B$2:$B$74=A2);Sheet2!$C$2:$C$74)))}

Образец файла Excel можно загрузить здесь .

Пожалуйста, сообщите.

Ответы [ 2 ]

0 голосов
/ 10 февраля 2019

Я не думаю, что комбинация промежуточных итогов / смещений (хотя и мощная) особенно полезна в данном конкретном случае - я бы порекомендовал использовать Aggregate:

=AGGREGATE(15,6,Sheet2!C$2:C$73/((Sheet2!C$2:C$73>0)*(Sheet2!B$2:B$73=A2)),1)

enter image description here

0 голосов
/ 10 февраля 2019

Хорошо, я нашел ответ на свой вопрос.Я просто слишком усложнил формулу.Пожалуйста, см. Рабочую формулу ниже:

=MIN(IF(Sheet2!$B$2:$B$76=A2;IF(Sheet2!$C$2:$C$76>0;SHeet2!$C$2:$C$76)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...