Формула Excel: номер последней строки в диапазоне -

Содержание

Общая формула

=MIN(ROW(rng))+ROWS(rng)-1

Резюме

Чтобы получить номер последней строки в диапазоне, вы можете использовать формулу, основанную на функциях ROW, ROWS и MIN. В показанном примере формула в ячейке F5:

=MIN(ROW(data))+ROWS(data)-1

где «данные» - именованный диапазон B5: D10

Объяснение

При наличии ссылки на одну ячейку функция СТРОКА возвращает номер строки для этой ссылки. Однако, если задан диапазон с несколькими строками, функция ROW вернет массив, содержащий все номера строк для диапазона:

(5;6;7;8;9;10)

Чтобы получить только номер первой строки, мы используем функцию MIN следующим образом:

MIN(ROW(data))

который возвращает наименьшее число в массиве, 5.

Когда у нас есть первая строка, мы можем просто добавить общее количество строк в диапазоне, а затем вычесть 1, чтобы получить окончательный результат. Мы получаем общее количество строк в диапазоне с помощью функции ROWS, и окончательный результат определяется следующим образом:

=5+ROWS(data)-1 =5+6-1 =10

Индексная версия

Вместо MIN вы также можете использовать INDEX для получения номера последней строки:

=ROW(INDEX(data,1,1))+ROWS(data)-1

Возможно, это немного быстрее для больших диапазонов, поскольку INDEX возвращает только одну ячейку в ROW.

Простая версия

Когда формула возвращает результат в виде массива, Excel отобразит первый элемент в массиве, если формула введена в одну ячейку. Это означает, что на практике часто можно просто использовать упрощенную версию формулы:

=ROW(data)+ROWS(data)-1

Однако внутри формул может потребоваться убедиться, что вы имеете дело только с одним элементом, а не с массивом. В этом случае вы захотите использовать версию MIN или INDEX, указанную выше.

Интересные статьи...