Как параметризовать аргумент диапазона функции, используя значение другой ячейки - PullRequest
3 голосов
/ 29 февраля 2012

В Excel, скажем, я пытаюсь найти в среднем 5 клеток, я могу поставить формулу

=Average(C1:C5)

Я бы хотел изменить формулу так, чтобы

= Average(C1:CXXXX)

где XXXX происходит из другой ячейки.

Есть ли способ достичь этого?

Ответы [ 2 ]

4 голосов
/ 29 февраля 2012

Возможно, вы захотите взглянуть на функцию INDIRECT , если вам это нужно в качестве формулы в ячейке - вы можете использовать ее следующим образом, предполагая, что D1 содержит строку, которую вы вызываете XXXXв вашем вопросе:

=AVERAGE(INDIRECT("C1:C"&D1))

Если это в vba, то вы можете использовать:

= Average(Range(Range("C1"),Range("C") & XXXX))

, где XXXX - номер строки, предполагая, что Average - это функция, которую вы определилигде-то.

1 голос
/ 29 февраля 2012

Используйте функцию INDIRECT. Indirect возвращает ссылку на строку. INDIRECT («A1») возвращает ячейку A1.

Ваши значения указаны в столбце C. Допустим, что XXXX находится в ячейке D1. Формула становится

=AVERAGE(C1:INDIRECT("C" & D1)).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...