Код VBA: среднее число столбцов справа (переменное число столбцов) - PullRequest
0 голосов
/ 08 июня 2018

Я пишу код, который будет усреднять все значения слева в наборах данных, которые имеют различное количество столбцов.Например, если мой набор данных A1: AC1, то я использовал код

ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-28]:RC[-2])"

. Этот код работает для нахождения среднего значения ячеек B1: AB1, которое в точности соответствует тому, что я хочу в этом случае, но еслимой следующий набор данных скажет 40 столбцов, этот код будет усреднять только 26 упомянутых ячеек.Я исследовал всюду и обнаружил, что я должен сначала посчитать столбцы слева, а затем использовать это в средней функции, но я не уверен, как именно это сделать.Как я могу написать код, который будет усреднять все значения слева от моей активной ячейки независимо от того, сколько это столбцов?

1 Ответ

0 голосов
/ 08 июня 2018

Вы близки, просто:

  1. Не используйте относительные ссылки для начального диапазона.
  2. Сохраняйте конечный диапазон относительным.

Попробуйте это:

ActiveCell.FormulaR1C1 = "=AVERAGE(RC2:RC[-2])"

Это всегда будет начинаться в столбце B и заканчиваться на 2 столбца перед текущей ячейкой, например.

Надеюсь, что имеет смысл/ помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...