Я хочу получить средневзвешенное значение Excel по двум диапазонам ячеек, которые разбиты на несколько чисел, которые я не хочу включать, и попробовал следующее:

=SUMPRODUCT(AQ6:AQ50,AQ75:AQ256,AT6:AT50,AT75:AT256)/SUM(AT6:AT50,AT75:AT256)

Но в Excel для Mac v16.12 это дает мне # #VALUE! , хотя любой диапазон сам по себе работает:

=SUMPRODUCT(AQ6:AQ50,AT6:AT50)/SUM(AT6:AT50)
=SUMPRODUCT(AQ75:AQ256,AT75:AT256)/SUM(AT75:AT256)

Как я могу создать средний вес для обоих диапазонов ячеек в одной формуле?

2 ответа2

2

Диапазоны внутри SUMPRODUCT должны быть одинакового размера, сделайте два:

=(SUMPRODUCT(AQ6:AQ50,AT6:AT50)+SUMPRODUCT(AQ75:AQ256,AT75:AT256))/SUM(AT6:AT50,AT75:AT256)
2

Редактировать: в формуле OP SUMPRODUCT() попытается умножить все четыре массива вместе, а затем суммировать элементы полученного массива. Это не то, что должно быть сделано, и, кроме того, он выдает ошибку по той причине, о которой упоминает @ScottCraner.

В простом английском языке средневзвешенное значение рассчитывается как сумма (умноженная на их вес), деленная на сумму весов. SUMPRODUCT() может использоваться для этого с двумя массивами чисел, но не так легко понять, что на самом деле делает формула.

Эта формула массива дает правильный результат:

=SUM(AQ6:AQ50*AT6:AT50,AQ75:AQ256*AT75:AT256)/SUM(AT6:AT50,AT75:AT256)

Как формула массива, она должна вводиться с помощью CTRL Shift Enter, а не просто Enter.

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