Как брать следующее значение, если уже ранее брали подобное?

Формула для гугл таблицы:

=ДВССЫЛ("ITOG!D" & (ПОИСКПОЗ(НАИБОЛЬШИЙ(ARRAYFORMULA(ЗНАЧЕН(ПОДСТАВИТЬ(ITOG!E$2:E$335; "%"; ""))); СТРОКА(G8)); ARRAYFORMULA(ЗНАЧЕН(ПОДСТАВИТЬ(ITOG!E$2:E$335; "%"; ""))); 0) + 1))

Формула отлично работает, получая номер строки где стоит самое большое число диапазона ITOG!E2:E335 , причём в формуле я учел чтоб она убирала символы "%" что стоят после чисел в ITOG!E2:E335 .

В текущей ячейке (см скрин ниже) где стоит формула (яч A9) функция СТРОКА(G8) используется как фиксированное число для функции НАИБОЛЬШИЙ, чтобы получить k-е по величине значение из массива, где k равно 8. Это означает, что формула для места где она стоит (яч A9) будет искать восьмое по величине значение в диапазоне ITOG!E2:E335
С этим в формуле всё окей!

Формула берет номер первой найденной строки в диапазоне ITOG!E2:E335 , где находится наибольшее число, допустим это строка с номером "x". Затем она возвращает соответствующее значение из ячейки ITOG!Dx и помещает его в ячейку Ay где собственно эта формула и стоит.

Пример проблемы: Но! если у нас в диапазоне ITOG!E2:E335 есть одинаковые значения, то формула возьмёт номер первой найденной строки с 8-ой по величине цифрой из диапазона ITOG!E2:E335.

И т.к. в нашем примере в диапазоне ITOG!E2:E335 8-ое по величине наибольшее значение стоит в ячейках ITOG!E2 и в ITOG!E10 и оно одинаково , то формула выведет в A9 и A10 значение из ячейки ITOG!D2

То из двух одинаковых номеров строк - она возьмет первую найденную строку и по этому в нашем примере она возьмет строку с номером 2. image


Ответы (0 шт):