Вы можете создать массив или числа с формой индекса массива:
INDEX(A:A,N(IF(A2:A5<>"",ROW(A2:A5))))
Это вернет каждую ячейку, которая не является нулем A2:A5, как массив к формуле.
Это работает для некоторой формулы, но не для всех.
Это работает на Slope
и Intercept
=INTERCEPT(INDEX(A:A,N(IF(A2:A5<>"",ROW(A2:A5)))),INDEX(B:B,N(IF(A2:A5<>"",ROW(A2:A5)))))
=SLOPE(INDEX(A:A,N(IF(A2:A5<>"",ROW(A2:A5)))),INDEX(B:B,N(IF(A2:A5<>"",ROW(A2:A5)))))
(Второй набор должен показать правильный вывод)
Как вы можете видеть, он пропускает 99
в B3 и возвращает только 1,2,3
в других ячейках.
Мы также можем настроить его, чтобы пропустить не числовой:
INDEX(A:A,N(IF(ISNUMBER(A2:A5),ROW(A2:A5))))
Идея состоит в том, что он создает массив номеров строк и передает его в INDEX, который затем возвращает все числа в этой строке.
Будучи формулой массива, при выходе из режима редактирования нужно будет использовать Ctrl-Shift-Enter вместо Enter.