Предположим, что вы часто обновляете таблицу, добавляя новые данные в ее столбцы. Вам, возможно, понадобится способ ссылаться на последнее значение в определенном столбце (последнее введенное значение).
В таблице на рис. 114.1 отслеживаются значения трех фондов в столбцах B:D. Обратите внимание, что информация поступает не в одно и то же время. Цель состоит в том, чтобы получить сумму самых последних данных по каждому фонду. Эти значения рассчитываются в диапазоне G4:G6.
Формулы в G4, G5 и G6 следующие:
=ИНДЕКС(B:B;СЧЁТЗ(B:B))
=ИНДЕКС(C:C;СЧЁТЗ(C:C))
=ИНДЕКС(D:D;СЧЁТЗ(D:D))
Формулы применяют функции СЧЁТЗ для подсчета количества непустых ячеек в столбце С. Это значение используется в качестве второго аргумента функции ИНДЕКС. Например, в столбце В последнее значение в строке равно 6, СЧЁТЗ возвращает 6, а функция ИНДЕКС возвращает шестое значение в столбце.
Предыдущие формулы работают в большинстве, но не во всех случаях. Если в столбце одна или несколько пустых ячеек разбросаны, то определение последней непустой ячейки — немного более сложная задача, поскольку функция СЧЁТЗ не подсчитывает пустые ячейки.
Следующая формула массива возвращает содержимое последней непустой ячейки в первых 500 строках из столбца С, даже если он включает пустые ячейки: =ИНДЕКС(C1:C500;МАКС(СТОЛБЕЦ(C1:C500)*(C1:C500<>"")))
.
Нажмите Ctrl+Shift+Enter (а не просто Enter), чтобы ввести формулу массива.
Вы можете, конечно, изменить формулу для работы с любым другим столбцом, кроме С. Для этого поменяйте четыре ссылки на столбец С на другой, который вам нужен. Если последняя непустая ячейка была в строке, идущей за 500 первыми строками, вам необходимо изменить два экземпляра значения 500 на большее число. Чем меньше строк ссылается в формуле, тем быстрее выполняется расчет.
Следующая формула массива подобна предыдущей, но возвращает последнюю непустую ячейку в строке (в данном случае в строке 1): =ИНДЕКС(1:1;МАКС(СТОЛБЕЦ(1:1)*(1:1<>"")))
. Чтобы использовать эту формулу для различных строк, измените три ссылки на строки 1:1 так, чтобы она соответствовала правильному количеству строк.