Имеется диапазон ячеек А1:А10. В ячейку В12 нужно вернуть значение из диапазона А1:А10 при условии что например если ячейка В11=А3 то вернуть значение следующей после А3 непустой ячейки из диапазона А1:А10.
В приведенном примере значение ячейки В12 должно быть 5
Приведённый пример неудачен, поскольку значение искомого элемента совпадает с номером строки этого элемента, заменим значение 5 на 50.
Алгоритм работы формулы:
Сначала находим индекс элемента B11 в A1:A10:
ПОИСКПОЗ(B11;A1:A10;0)
Затем из оставшейся части массива функцией ЕПУСТО формируем массив логических значений (ИСТИНА - пустой элемент, ЛОЖЬ - заполненный) и ищем индекс первого значения ЛОЖЬ - это первый заполненный элемент.
Складываем индекс элемента B11 в A1:A10 с полученным значением и ставим в аргумент номер строки функции ИНДЕКС
На языке Эксель получится формула:
=ИНДЕКС(A1:A10;ПОИСКПОЗ(B11;A1:A10;0)+ПОИСКПОЗ(ЛОЖЬ;ЕПУСТО(СМЕЩ(A1;ПОИСКПОЗ(B11;A1:A10;0);0;ЧСТРОК(A1:A10)-ПОИСКПОЗ(B11;A1:A10;0);1));0))
Эта формула вводится как формула массива (фигурные скобки ставятся автоматически при нажатии CTRL+SHIFT+ENTER)