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

Загальна формула

=SUM(firstcell:INDEX(data,rows,cols))

Резюме

Щоб визначити діапазон на основі значення в іншій комірці, ви можете використовувати функцію INDEX. У наведеному прикладі формула в J7 має вигляд:

=SUM(C5:INDEX(data,J5,J6))

де "дані" - названий діапазон B5: G9.

Пояснення

Ця формула спирається на конкретну поведінку INDEX - хоча здається, що INDEX повертає значення в певному місці, насправді повертає посилання на місце. У більшості формул ви не помітите різниці - Excel просто оцінює посилання та повертає значення. Ця формула використовує цю функцію для побудови динамічного діапазону на основі введення робочого аркуша.

Усередині функції сума перша посилання - це просто перша комірка в діапазоні, яка охоплює всі можливі комірки:

=SUM(C5:

Щоб отримати останню комірку, ми використовуємо INDEX. Тут ми надаємо INDEX названий діапазон "дані", який є максимально можливим діапазоном значень, а також значення з J5 (рядки) та J6 (стовпці). INDEX не повертає діапазон, він повертає лише одну клітинку в цьому місці, E9 у прикладі:

INDEX(data,J5,J6) // returns E9

Вихідна формула зведена до:

=SUM(C5:E9)

який повертає 300, сума всіх значень у C5: E9.

Формула в J8 майже однакова, але використовує AVERAGE замість SUM для обчислення середнього. Коли користувач змінює значення в J5 або J6, діапазон оновлюється, і повертаються нові результати.

Альтернатива OFFSET

Ви можете створити подібні формули за допомогою функції OFFSET, показаної нижче:

=SUM(OFFSET(C5,0,0,J5,J6)) // sum =AVERAGE(OFFSET(C5,0,0,J5,J6)) // average

OFFSET призначений для повернення діапазону, тому формули, можливо, простіші для розуміння. Однак OFFSET - це нестабільна функція, яка може спричинити проблеми з продуктивністю при використанні у великих, більш складних робочих аркушах.

Цікаві статті...