Страницы: 1
RSS
Исключить 0 из поиска минимального значения., Исключить 0 из поиска минимального значения.
 
Имеем формулу =МИН(G2;G6;G7;G10), где значение ячеек 6,10,0,14 соответственно. При таком положении будет выделено минимальное значение "0". Как можно исключить значение 0, что бы программа выдала "6".
 
Если есть возможность указать весь массив, то так (формула массива):
Код
=MIN(IF((G2:G10)>0;G2:G10))

А если непременно нужно по-отдельности, то вот такой вариант (нужен офис не ниже 2013).
Код
=AGGREGATE(15;6;10^LOG(FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(G2&"\"&G6&"\"&G7&"\"&G10;"\";";");";";"</s><s>")&"</s></t>";"//s[.*0=0]"));1)

Или вариант для более ранних офисов (формула массива):
Код
=MIN(IFERROR(10^LOG(--MID(SUBSTITUTE(G2&"\"&G6&"\"&G7&"\"&G10;"\";REPT(" ";99));1+99*(ROW($1:15)-1);99));""))

Не забудьте перевести формулы, если у вас русский офис. Это можно сделать здесь.
Изменено: memo - 21.04.2022 23:27:15
 
=MIN(IFERROR(1/(1/CHOOSE({1;2;3;4};G2;G6;G7;G10));1=0))
По вопросам из тем форума, личку не читаю.
 
Цитата
написал:
=MIN(IFERROR(1/(1/CHOOSE({1;2;3;4};G2;G6;G7;G10));1=0))
Спасибо!
Цитата
Цитата
написал:
Если есть возможность указать весь массив, то так (формула массива):
Спассибо!
 
Мне кажется, что можно просто применить формулу
Код
=AGGREGATE(15;6;G2:G10/(G2:G10<>0);1)
или ещё проще
Код
=AGGREGATE(15;6;G2:G10;2)
Изменено: jakim - 23.04.2022 11:45:01
 
Цитата
jakim написал:
проще
не значит правильно,  ведь нет условия что ноль только один.
А в целом если в диапазоне нет чисел других то, да. Но я акцентировался на несмежных диапазонах.
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх