4

Работая над одной проблемой, я столкнулся с чем-то, что смутило меня и надеялось на какое-то разъяснение.

Я пытаюсь использовать функцию SUM() очень вокруг.

Формула

=SUM(ADDRESS(ROW(blahblah), COLUMN(blahblah)) : ADDRESS(RoW(blahblah), COLUMN(blahblah))) 

выдает ошибку:502

Когда я применяю INDIRECT() к ADDRESS() он прекрасно работает.

=SUM(INDIRECT(ADDRESS(ROW(blahblah), COLUMN(blahblah))  : INDIRECT(ADDRESS(ROW(blahblah), COLUMN(blahblah))) 

возвращает значение, которое проверяется.

Что меня смущает, так это то, что использование при удалении вложенной функции функций ADDRESS() даст действительную ссылку на ячейку (EX: $B$4), но когда SUM() добавляется в кишки SUM() , возникает ошибка код. Так почему же требуется дополнительный INDIRECT() для работы ADDRESS() при вложении в SUM()?

Есть мысли?

1 ответ1

7

Функция ADDRESS() делает именно это. Он предоставляет ссылку на ячейку, а не на содержимое ячейки. Функция INDIRECT() будет принимать ссылки на ячейки и предоставлять содержимое ячейки, чтобы функция SUM() работала правильно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .